Udostępnij za pośrednictwem


Interfejs IVsUserSettingsQuery

 

Umożliwia VSPackage wskazać, jeśli mają być zapisywane lub nie należy jej ustawienia.

Przestrzeń nazw:   Microsoft.VisualStudio.Shell.Interop
Zestaw:  Microsoft.VisualStudio.Shell.Interop.8.0 (w Microsoft.VisualStudio.Shell.Interop.8.0.dll)

Składnia

[GuidAttribute("334E1F15-7D97-4231-81B0-998E4A960E69")]
[InterfaceTypeAttribute(1)]
public interface IVsUserSettingsQuery
[GuidAttribute("334E1F15-7D97-4231-81B0-998E4A960E69")]
[InterfaceTypeAttribute(1)]
public interface class IVsUserSettingsQuery
[<GuidAttribute("334E1F15-7D97-4231-81B0-998E4A960E69")>]
[<InterfaceTypeAttribute(1)>]
type IVsUserSettingsQuery = interface end
<GuidAttribute("334E1F15-7D97-4231-81B0-998E4A960E69")>
<InterfaceTypeAttribute(1)>
Public Interface IVsUserSettingsQuery

Metody

Nazwa Opis
System_CAPS_pubmethod NeedExport(String, Int32)

Wskazuje, czy określona kategoria wymaga eksportu jej ustawienia.

Uwagi

Uwagi dotyczące implementacji

Implementowanie VSPackage musi kontrolować jego ustawienia są zapisywane do Visual Studio pliku ustawień.

Uwagi dotyczące wywoływania

Ten interfejs tylko powinny być zrealizowane kontrolować oszczędności jego ustawienia musi VSPackage.

Na przykład VSPackage mogą zezwolić użytkownikom na zmianę ustawień dla bieżącej sesji, ale informacje przechowywane tylko aktualizacji po kliknięciu zapisać przycisku.

Jeśli VSPackage nie implementuje interfejsu, jego stan jest zawsze wyeksportowane.

Pojedynczy VSPackage może obsługiwać więcej niż jeden punkt ustawienia niestandardowe (kategoria ustawienia). Dlatego implementacje NeedExport musi wyboru podany punkt ustawienia niestandardowe identyfikowanie identyfikatora GUID ani ustawień argumentu kategorii ustalenie określonej grupy ustawień musi być zapisany.

Na przykład w przykładzie poniżej pakietu VSPackage zawsze żądań, że jego stan paska poleceń zostanie zapisana, ale tylko żądania stanu powiązania klucza zapisane, jeśli ustawiono flagę.

Przykłady

STDMETHOD(NeedExport)(WCHAR* pszCategoryGUID, BOOL *pfNeedExport)
{
    if (!pfNeedExport)
        return E_INVALIDARG;

    CLSID clsidCategory;
    HRESULT hr= S_OK;

    hr = CLSIDFromString(pszCategoryGUID, &clsidCategory);
    IfFailGo(hr);
    if (GUID_Profiles_CommandBars == clsidCategory) {
        *pfNeedExport = TRUE; //Always export Command Bar Configuration
    }else if (GUID_Profiles_KeyBindings == clsidCategory) {
        *pfNeedExport = FALSE; //By Default don't export key bindings
        if (m_fMake_Permanent)
            *pfNeedExport = TRUE; //Export if user wants current configuration saved.
    }else{
        hr = E_UNEXPECTED;
    }
 Error:
    return hr;
}

Zobacz też

IVsUserSettings
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Obsługa ustawień użytkownika
Porady: umożliwia importowanie ustawień zestawy międzyoperacyjne
Working with Settings

Powrót do początku