Udostępnij za pośrednictwem


Klasa DocumentProperties

Zapewnia obsługę właściwości dokumentu skojarzone z usługą języka.

Ten interfejs API nie jest zgodny ze specyfikacją CLS. Alternatywa zgodna ze specyfikacją CLS to [None].

Hierarchia dziedziczenia

System.Object
  Microsoft.VisualStudio.Shell.LocalizableProperties
    Microsoft.VisualStudio.Package.DocumentProperties

Przestrzeń nazw:  Microsoft.VisualStudio.Package
Zestawy:   Microsoft.VisualStudio.Package.LanguageService.9.0 (w Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (w Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService (w Microsoft.VisualStudio.Package.LanguageService.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (w Microsoft.VisualStudio.Package.LanguageService.10.0.dll)

Składnia

'Deklaracja
<CLSCompliantAttribute(False)> _
Public MustInherit Class DocumentProperties _
    Inherits LocalizableProperties _
    Implements ISelectionContainer, IDisposable
[CLSCompliantAttribute(false)]
public abstract class DocumentProperties : LocalizableProperties, 
    ISelectionContainer, IDisposable

Typ DocumentProperties uwidacznia następujące elementy członkowskie.

Konstruktorzy

  Nazwa Opis
Metoda chroniona DocumentProperties Inicjuje nowe wystąpienie DocumentProperties klasy.

Początek

Właściwości

  Nazwa Opis
Właściwość publiczna Visible Określa, czy DocumentProperties obiekt jest widoczny w Właściwości okna.

Początek

Metody

  Nazwa Opis
Metoda publiczna Close Zamyka DocumentProperties obiektu tak, aby jego właściwości są już widoczne w Właściwości okna.
Metoda publiczna CountObjects Zwraca liczbę obiektów zarządzanych przez to DocumentProperties obiektu.
Metoda publiczna CreateDesignPropertyDescriptor Zwraca DesignPropertyDescriptor otoki na deskryptora danej właściwości. (Odziedziczone z LocalizableProperties).
Metoda publiczna Dispose() Czyści obiektu.
Metoda chroniona Dispose(Boolean) Czyści obiekt i jego zasobów.
Metoda publiczna Equals Określa, czy określony obiekt jest równa bieżącego obiektu. (Odziedziczone z Object).
Metoda chroniona Finalize Czy końcowego oczyszczania obiektu. (Zastępuje Object.Finalize()).
Metoda publiczna GetAttributes Pobiera zbiór atrybutów dla tego składnika. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetClassName Zwraca nazwę klasy tego obiektu. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetCodeWindowManager Pobiera Menedżera okien kodu, które są związane z tym DocumentProperties obiektu.
Metoda publiczna GetComponentName Zwraca nazwę tego obiektu. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetConverter Zwraca typ konwertera dla tego obiektu. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetDefaultEvent Zwraca zdarzenie domyślne dla tego obiektu. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetDefaultProperty Pobiera właściwości domyślnej dla składnika. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetEditor Pobiera edytor dla tego obiektu. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetEvents() Pobiera zbierania zdarzeń dla określonego składnika. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetEvents(array<Attribute[]) Pobiera zbierania zdarzeń dla określonego składnika jako filtr przy użyciu określonej tablicy atrybutów. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetHashCode Służy jako funkcja mieszania dla określonego typu. (Odziedziczone z Object).
Metoda publiczna GetObjects Zwraca listę obiektów zarządzanych przez to DocumentProperties obiektu.
Metoda publiczna GetProperties() Pobiera kolekcji właściwości. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetProperties(array<Attribute[]) Zwraca wartość właściwości dla zaznaczonego obiektu przy użyciu tablicy atrybutu jako filtr. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetPropertyOwner Zwraca obiekt w stanie brows. (Odziedziczone z LocalizableProperties).
Metoda publiczna GetSource Zwraca Source obiektu skojarzonego z tym DocumentProperties obiektu.
Metoda publiczna GetType Pobiera Type bieżącej instancji. (Odziedziczone z Object).
Metoda chroniona MemberwiseClone Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object).
Metoda publiczna Refresh Aktualizacje Właściwości okno z najnowszych wartości właściwości.
Metoda publiczna SelectObjects O nazwie Zarządzanie zaznaczenia wielu obiektów w Właściwości okna.
Metoda publiczna ToString Zwraca ciąg, który reprezentuje bieżącego obiektu. (Odziedziczone z Object).

Początek

Uwagi

Właściwości dokumentu są wyświetlane w Właściwości okna po otwarciu dokumentu w Visual Studio.Normalnie, dokumenty do pliku źródłowego nie mają właściwości i tak Właściwości okno jest pusty.Jednak usługa języka można dostarczyć właściwości, które mogą być powiązane z dowolnego typu dokumentu, obsługiwane przez tę placówkę języka.Na przykład jeśli usługi języka obsługuje osadzanie schemat kodowania w pliku źródłowym, to mogą być wyświetlone jako właściwość dokumentu.Po zmianie właściwości plik źródłowy będzie aktualizowany.

Maksymalnie jest służbie językowej określenie właściwości, jak specyficznych dla dokumentu są zachowywane lub zapisywane.Właściwości są zazwyczaj ładowane z i zapisane w pliku źródłowym, sam.Właściwości można uzyskać, gdy dokument jest analizowany.Podczas aktualizowania właściwości wartości mogą być wstawiane bezpośrednio do źródła pliku, więc po zapisaniu pliku źródłowego właściwość jest zapisany wraz z nią.

Uwagi dotyczące implementacji

Jeśli trzeba obsługiwać właściwości specyficznych dla dokumentu w języku usługi, muszą pochodzić od klasy DocumentProperties klasy i dodać właściwości publiczne reprezentujących właściwości, które można przeglądać i zmienione.Zobacz przykład w tym temacie, aby zobaczyć, jak jest to zwykle implementowane.Należy zastąpić CreateDocumentProperties metody w LanguageService klasy, aby przywrócić wystąpienie programu DocumentProperties obiektu.

Uwagi dotyczące wywoływania

Visual Studiozarządza Właściwości okna.Domyślna implementacja z CreateDocumentProperties metoda zwraca DocumentProperties obiekt, który nie ma widocznego właściwości tak Właściwości okna nie zawiera żadnych wartości.Jeśli wdrożenie własną wersję DocumentProperties klasy z publicznych właściwości, które zostały automatycznie poprawnych atrybutów tych właściwości są wyświetlane w Właściwości okna.Zmiany wprowadzone do właściwości w Właściwości wpływają na okno programu DocumentProperties obiektu natychmiast.Zobacz przykład, aby zobaczyć, jakie atrybuty muszą być stosowane do właściwości.

Przykłady

W poniższym przykładzie DocumentProperties obiektu z jednej właściwości visible.

using Microsoft.VisualStudio.Package;
using System.ComponentModel;

namespace MyLanguagePackage
{
    class MyDocumentProperties : DocumentProperties
    {
        private string m_encoding;

        public MyDocumentProperties(CodeWindowManager mgr) : base(mgr)
        {
        }

        [DisplayNameAttribute("Encoding")]
        [CategoryAttribute("General")]
        [DescriptionAttribute("Changes encoding scheme")]
        public string Encoding
        {
            get
            {
                return m_encoding;
            }
            set
            {
                m_encoding = value;
                // Write value to source text.
                // This can be done through a custom method
                // (called SetProperyValue in this example) on your
                // language service class like this:
                Source src = this.GetSource();
                if (src != null)
                {
                    MyLanguageService service = src.LanguageService as MyLanguageService;
                    if (service != null)
                    {
                        service.SetPropertyValue(src, "Encoding", m_encoding);
                    }
                }
            }
        }
    }
}

Bezpieczeństwo wątku

Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.

Zobacz też

Informacje

Przestrzeń nazw Microsoft.VisualStudio.Package