Condividi tramite


Classe ExtendedPropertyValueEditor

Aggiornamento: novembre 2007

Contenitore per tutta logica di editor esteso per le proprietà.

Spazio dei nomi:  Microsoft.Windows.Design.PropertyEditing
Assembly:  Microsoft.Windows.Design (in Microsoft.Windows.Design.dll)

Sintassi

Public Class ExtendedPropertyValueEditor _
    Inherits PropertyValueEditor

Dim instance As ExtendedPropertyValueEditor
public class ExtendedPropertyValueEditor : PropertyValueEditor
public ref class ExtendedPropertyValueEditor : public PropertyValueEditor
public class ExtendedPropertyValueEditor extends PropertyValueEditor

Note

La classe ExtendedPropertyValueEditor può contenere due oggetti DataTemplate, uno per un editor inline e un altro per un editor esteso. L'editor in linea fornisce un'interfaccia personalizzata che viene visualizzata entro i limiti della finestra Proprietà, mentre l'editor esteso fornisce un'interfaccia che viene visualizzata in una nuova finestra.

La proprietà InlineEditorTemplate restituisce il modello XAML per l'interfaccia visiva per l'editor in linea, mentre la proprietà ExtendedEditorTemplate restituisce il modello XAML per l'editor esteso. Tali modelli, in genere vengono forniti in un oggetto ResourceDictionary in un altro punto del progetto.

È necessario utilizzare l'oggetto EditModeSwitchButton per richiamare l'oggetto ExtendedPropertyValueEditor personalizzato. Per una dimostrazione, vedere Procedura dettagliata: implementazione di un editor di colori.

Esempi

Nell'esempio di codice seguente viene illustrato come utilizzare la classe ExtendedPropertyValueEditor. Per ulteriori informazioni, vedere Procedura dettagliata: implementazione di un editor di colori.

' Demonstrates creating a class that inherits ExtendedPropertyValueEditor
' and setting the ExtendedEditorTemplate and InlineEditorTemplate properties.
Public Class BrushExtendedEditor
    Inherits ExtendedPropertyValueEditor
    ' The EditorResources class in this example inherits ResourceDirectory and
    ' contains the template for the extended editor and the inline editor. This would be defined in 
    ' an associated XAML file named EditorResources.xaml
    Private res As New EditorResources()
    Public Sub New()
        Me.ExtendedEditorTemplate = CType(res("BrushExtendedEditorTemplate"), DataTemplate)
        Me.InlineEditorTemplate = CType(res("BrushInlineEditorTemplate"), DataTemplate)
    End Sub
End Class
// Demonstrates creating a class that inherits ExtendedPropertyValueEditor
// and setting the ExtendedEditorTemplate and InlineEditorTemplate properties.
public class BrushExtendedEditor : ExtendedPropertyValueEditor
{
    // The EditorResources class in this example inherits ResourceDictionary 
    // class contains template for the inline editor and the extended editor. These would be 
    // defined in an associated XAML file named EditorResources.xaml
    private EditorResources res = new EditorResources();

    public BrushExtendedEditor()
    {
        this.ExtendedEditorTemplate = res["BrushExtendedEditorTemplate"] as DataTemplate;
        this.InlineEditorTemplate = res["BrushInlineEditorTemplate"] as DataTemplate;
    }
}

Gerarchia di ereditarietà

System.Object
  Microsoft.Windows.Design.PropertyEditing.PropertyValueEditor
    Microsoft.Windows.Design.PropertyEditing.ExtendedPropertyValueEditor

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

Membri ExtendedPropertyValueEditor

Spazio dei nomi Microsoft.Windows.Design.PropertyEditing

Altre risorse

Architettura di modifica delle proprietà

Estensibilità di Progettazione WPF

Archivio di metadati