Condividi tramite


Classe AdornerPanel

Aggiornamento: novembre 2007

Fornisce un contenitore per i controlli WPF (Windows Presentation Foundation) utilizzati in fase di progettazione come strumenti decorativi.

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

Sintassi

Public Class AdornerPanel _
    Inherits Panel

Dim instance As AdornerPanel
public class AdornerPanel : Panel
public ref class AdornerPanel : public Panel
public class AdornerPanel extends Panel

Note

Utilizzare la classe AdornerPanel per contenere strumenti decorativi Design-Time. Uno strumento decorativo è una parte dell'interfaccia utente utilizzata per decorare un'altra parte dell'interfaccia utente.

Aggiungere controlli che rappresenteranno strumenti decorativi all'insieme Children.

Chiamare i metodi SetHorizontalStretch e SetVerticalStretch per ridimensionare il pannello di strumenti decorativi rispetto al controllo decorato.

Per ridimensionare e posizionare gli strumenti decorativi, creare un oggetto AdornerPlacementCollection e chiamare i relativi metodi correlati a dimensioni e posizione. Aggiungere l'oggetto AdornerPlacementCollection al pannello di strumenti decorativi utilizzando il metodo SetPlacements.

Quando il pannello di strumenti decorativi è configurato, aggiungerlo all'insieme Adorners di un'implementazione AdornerProvider.

Gli strumenti decorativi sono associati a comandi di strumenti tramite la proprietà connessa Tool. Quando il puntatore del mouse passa su uno strumento decorativo, le relative associazioni diventano disponibili come parte del routing dell'input e dei comandi. Inoltre, il modello associato all'elemento dell'interfaccia utente decorato diventa il valore di origine dei dati di movimento generati quando lo strumento decorativo è attivo.

Esempi

Nell'esempio di codice seguente viene illustrato come utilizzare un oggetto AdornerPanel per contenere un controllo Slider, utilizzato in fase di progettazione per impostare la proprietà Background del controllo decorato. Per ulteriori informazioni, vedere Procedura dettagliata: creazione di uno strumento decorativo visuale in fase di progettazione.

' Setup the adorner panel.
' All adorners are placed in an AdornerPanel
' for sizing and layout support.
Dim myPanel = Me.Panel

AdornerPanel.SetHorizontalStretch(opacitySlider, AdornerStretch.Stretch)
AdornerPanel.SetVerticalStretch(opacitySlider, AdornerStretch.None)

Dim placement As New AdornerPlacementCollection()

' The adorner's width is relative to the content.
' The slider extends the full width of the control it adorns.
placement.SizeRelativeToContentWidth(1.0, 0)

' The adorner's height is the same as the slider's.
placement.SizeRelativeToAdornerDesiredHeight(1.0, 0)

' Position the adorner above the control it adorns.
placement.PositionRelativeToAdornerHeight(-1.0, 0)

' Position the adorner up 5 pixels. This demonstrates 
' that these placement calls are additive. These two calls
' are equivalent to the following single call:
' PositionRelativeToAdornerHeight(-1.0, -5).
placement.PositionRelativeToAdornerHeight(0, -5)

AdornerPanel.SetPlacements(opacitySlider, placement)
// Setup the adorner panel.
// All adorners are placed in an AdornerPanel
// for sizing and layout support.
AdornerPanel myPanel = this.Panel;

AdornerPanel.SetHorizontalStretch(opacitySlider, AdornerStretch.Stretch);
AdornerPanel.SetVerticalStretch(opacitySlider, AdornerStretch.None);

AdornerPlacementCollection placement = new AdornerPlacementCollection();

// The adorner's width is relative to the content.
// The slider extends the full width of the control it adorns.
placement.SizeRelativeToContentWidth(1.0, 0);

// The adorner's height is the same as the slider's.
placement.SizeRelativeToAdornerDesiredHeight(1.0, 0);

// Position the adorner above the control it adorns.
placement.PositionRelativeToAdornerHeight(-1.0, 0);

// Position the adorner up 5 pixels. This demonstrates 
// that these placement calls are additive. These two calls
// are equivalent to the following single call:
// PositionRelativeToAdornerHeight(-1.0, -5).
placement.PositionRelativeToAdornerHeight(0, -5);

AdornerPanel.SetPlacements(opacitySlider, placement);

Gerarchia di ereditarietà

System.Object
  System.Windows.Threading.DispatcherObject
    System.Windows.DependencyObject
      System.Windows.Media.Visual
        System.Windows.UIElement
          System.Windows.FrameworkElement
            System.Windows.Controls.Panel
              Microsoft.Windows.Design.Interaction.AdornerPanel

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 AdornerPanel

Spazio dei nomi Microsoft.Windows.Design.Interaction

Altre risorse

Architettura degli strumenti decorativi visuali

Spazio di layout e spazio di rendering

Provider di funzionalità e connettori di funzionalità