Condividi tramite


Classe DocumentProperties

Fornisce il supporto per le proprietà documento-specifiche associate a un servizio di linguaggio.

Questa API non è conforme a CLS. L'alternativa conforme a CLS è [None].

Gerarchia di ereditarietà

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

Spazio dei nomi:  Microsoft.VisualStudio.Package
Assembly:   Microsoft.VisualStudio.Package.LanguageService.9.0 (in Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (in Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService (in Microsoft.VisualStudio.Package.LanguageService.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (in Microsoft.VisualStudio.Package.LanguageService.10.0.dll)

Sintassi

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

Il tipo DocumentProperties espone i seguenti membri.

Costruttori

  Nome Descrizione
Metodo protetto DocumentProperties Inizializza una nuova istanza di DocumentProperties classe.

In alto

Proprietà

  Nome Descrizione
Proprietà pubblica Visible determina se DocumentProperties l'oggetto è visibile in proprietà finestra.

In alto

Metodi

  Nome Descrizione
Metodo pubblico Close chiude DocumentProperties oggetto in modo che le proprietà non sono più visibili in proprietà finestra.
Metodo pubblico CountObjects Restituisce il numero di oggetti gestiti da questo DocumentProperties oggetto.
Metodo pubblico CreateDesignPropertyDescriptor Restituisce un oggetto DesignPropertyDescriptor wrapper del descrittore di proprietà specificato. (Ereditato da LocalizableProperties)
Metodo pubblico Dispose() pulisce l'oggetto.
Metodo protetto Dispose(Boolean) Pulisce oggetto e le relative risorse.
Metodo pubblico Equals Determina se l'oggetto specificato equivale all'oggetto corrente. (Ereditato da Object)
Metodo protetto Finalize Esegue la pulizia finale dell'oggetto. (Esegue l'override di Object.Finalize()).
Metodo pubblico GetAttributes Ottiene una raccolta di attributi per il componente. (Ereditato da LocalizableProperties)
Metodo pubblico GetClassName Restituisce il nome della classe di questo oggetto. (Ereditato da LocalizableProperties)
Metodo pubblico GetCodeWindowManager Recupera gestione finestre del codice associato a l DocumentProperties oggetto.
Metodo pubblico GetComponentName Restituisce il nome dell'oggetto. (Ereditato da LocalizableProperties)
Metodo pubblico GetConverter restituisce un convertitore di tipi per questo oggetto. (Ereditato da LocalizableProperties)
Metodo pubblico GetDefaultEvent restituisce l'evento predefinito per questo oggetto. (Ereditato da LocalizableProperties)
Metodo pubblico GetDefaultProperty Ottiene la proprietà predefinita per un componente. (Ereditato da LocalizableProperties)
Metodo pubblico GetEditor Recupera l'editor di questo oggetto. (Ereditato da LocalizableProperties)
Metodo pubblico GetEvents() Ottiene la raccolta di eventi per un componente specifico. (Ereditato da LocalizableProperties)
Metodo pubblico GetEvents(array<Attribute[]) Ottiene la raccolta di eventi per un componente specifico che l'utilizzo di una matrice specificata attributi quali filtro. (Ereditato da LocalizableProperties)
Metodo pubblico GetHashCode Funge da funzione hash per un determinato tipo. (Ereditato da Object)
Metodo pubblico GetObjects Restituisce un elenco di oggetti gestiti da questo DocumentProperties oggetto.
Metodo pubblico GetProperties() ottiene la raccolta di proprietà. (Ereditato da LocalizableProperties)
Metodo pubblico GetProperties(array<Attribute[]) Restituisce le proprietà per l'oggetto selezionato tramite la matrice di attributo come filtro. (Ereditato da LocalizableProperties)
Metodo pubblico GetPropertyOwner restituisce l'oggetto fronte-in grado di. (Ereditato da LocalizableProperties)
Metodo pubblico GetSource Restituisce un oggetto Source oggetto associato a questo DocumentProperties oggetto.
Metodo pubblico GetType Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo protetto MemberwiseClone Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblico Refresh aggiorna proprietà finestra con gli ultimi valori della proprietà.
Metodo pubblico SelectObjects Chiamato per gestire la selezione degli oggetti in proprietà finestra.
Metodo pubblico ToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)

In alto

Note

Le proprietà del documento vengono visualizzati in proprietà finestra quando il documento viene aperto in Visual Studio.In genere, i documenti del file di origine non dispongono di proprietà e così proprietà la finestra è vuota.Tuttavia, un servizio di linguaggio possono fornire le proprietà che possono essere associate a qualsiasi tipo di documento supportati dal servizio di linguaggio.Ad esempio, se i supporti del servizio di linguaggio che incorporano uno schema di codifica nel file di origine, si possono essere visualizzati come proprietà del documento.Quando la proprietà viene modificata, il file di origine è aggiornato.

È compito del servizio di linguaggio per determinare quali proprietà documento-specifiche vengono salvate in modo permanente o salvate.In genere, le proprietà vengono caricate da e verranno salvate nel file di origine stesso.Le proprietà possono essere ottenute quando il documento viene analizzato.Quando una proprietà viene aggiornata, il valore può essere inserite immediatamente nel file di origine quando il file di origine viene salvato, la proprietà viene salvato con.

Note per gli implementatori

Se è necessario supportare le proprietà documento-specifiche nel servizio di linguaggio, è necessario derivare una classe da DocumentProperties la classe e aggiungere proprietà pubbliche che rappresentano le proprietà di e possono essere modificate.Vedere l'esempio riportato in questo argomento per vedere come questo in genere viene distribuito.È necessario eseguire l'override CreateDocumentProperties metodo in LanguageService classe per restituire un'istanza di DocumentProperties oggetto.

Note per i chiamanti

Visual Studio gestisce proprietà finestra.L'implementazione predefinita di CreateDocumentProperties il metodo restituisce un oggetto DocumentProperties oggetto che non dispone di proprietà visualizzabile così proprietà la finestra non viene visualizzata alcuna operazione.Se si distribuisce la propria versione di DocumentProperties classe con le proprietà pubbliche che dispongono degli attributi corretti, tali proprietà vengono visualizzati automaticamente in proprietà finestra.Modifiche apportate in una proprietà di proprietà influenza della finestra DocumentProperties oggetto immediatamente.Vedere l'esempio per verificare che gli attributi devono essere applicato a una proprietà.

Esempi

Nell'esempio seguente viene illustrato un oggetto DocumentProperties oggetto con una proprietà visibile.

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);
                    }
                }
            }
        }
    }
}

Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Vedere anche

Riferimenti

Spazio dei nomi Microsoft.VisualStudio.Package