Condividi tramite


ContextMenuService Classe

Definizione

Fornisce un'implementazione di file system per la visualizzazione di una classe ContextMenu.

public ref class ContextMenuService abstract sealed
public static class ContextMenuService
type ContextMenuService = class
Public Class ContextMenuService
Ereditarietà
ContextMenuService

Esempio

Nell'esempio seguente viene assegnato lo stesso ContextMenu a due pulsanti e vengono impostate le HasDropShadowproprietà , , PlacementHorizontalOffsetPlacementRectangle, e VerticalOffset per impostare su ContextMenu posizioni diverse per ogni pulsante.

<StackPanel>
  <StackPanel.Resources>
    <ContextMenu x:Key="myContextMenu">
      <MenuItem Header="Item"/>
    </ContextMenu>
  </StackPanel.Resources>

  <!--Both buttons use the same ContextMenu but use the
    properties on ContextMenuService to position them
    differently.-->
  <Button ContextMenu="{StaticResource myContextMenu}" 
          ContextMenuService.HasDropShadow="False" 
          ContextMenuService.Placement="Relative"
          ContextMenuService.HorizontalOffset="50"
          ContextMenuService.VerticalOffset="-10">
    button 1
  </Button>

  <Button ContextMenu="{StaticResource myContextMenu}" 
          ContextMenuService.HasDropShadow="True"
          ContextMenuService.Placement="Right"
          ContextMenuService.PlacementRectangle="0,0,30,30">
    button 2
  </Button>
</StackPanel>

Nell'esempio seguente viene illustrato come usare il servizio per visualizzare un oggetto ContextMenu su un pulsante disabilitato. Si noti che si imposta la ShowOnDisabled proprietà sul pulsante padre del menu di scelta rapida.

<Button Height="30" Content="Disabled Button" IsEnabled="False" 
     ContextMenuService.ShowOnDisabled="True">
  <Button.ContextMenu>
    <ContextMenu>
      <MenuItem Header="Item 1"/>
      <MenuItem Header="Item 2"/>
      <MenuItem Header="Item 3"/>
    </ContextMenu>
  </Button.ContextMenu>
</Button>

Commenti

La ContextMenuService classe fornisce proprietà associate che possono essere usate per specificare l'aspetto e la posizione di un menu di scelta rapida. Molte delle proprietà della ContextMenuService classe sono definite anche da ContextMenu. A volte è più pratico impostare le proprietà usando la ContextMenuService classe che impostando le proprietà in un ContextMenuoggetto . Ad esempio, è possibile creare un oggetto ContextMenu per essere condiviso da più elementi, ma usare la ContextMenuService classe per specificare una posizione diversa dell'oggetto ContextMenu per ogni elemento. Le proprietà seguenti sono definite dalle ContextMenu classi e ContextMenuService . Se una di queste proprietà è impostata sia ContextMenu su che su ContextMenuService, viene usato il valore della proprietà dall'oggetto ContextMenuService .

È anche possibile usare l'oggetto ContextMenuService per visualizzare i menu sugli elementi disabilitati.

Campi

ContextMenuClosingEvent

Identifica l'evento indirizzato ContextMenuClosing.

ContextMenuOpeningEvent

Identifica l'evento associato ContextMenuOpening.

ContextMenuProperty

Identifica la proprietà associata ContextMenu.

HasDropShadowProperty

Identifica la proprietà associata HasDropShadow.

HorizontalOffsetProperty

Identifica la proprietà associata HorizontalOffset.

IsEnabledProperty

Identifica la proprietà associata IsEnabled.

PlacementProperty

Identifica la proprietà associata Placement.

PlacementRectangleProperty

Identifica la proprietà associata PlacementRectangle.

PlacementTargetProperty

Identifica la proprietà associata PlacementTarget.

ShowOnDisabledProperty

Identifica la proprietà associata ShowOnDisabled.

VerticalOffsetProperty

Identifica la proprietà associata VerticalOffset.

Proprietà associate

ContextMenu

Ottiene o imposta il contenuto di una classe ContextMenu.

HasDropShadow

Ottiene o imposta un valore che indica se la proprietà ContextMenu ha l'effetto ombreggiatura abilitato.

HorizontalOffset

Ottiene o imposta un valore che indica dove posizionare la proprietà ContextMenu lungo la direzione x rispetto al controllo padre.

IsEnabled

Ottiene o imposta un valore che indica se è possibile visualizzare la proprietà ContextMenu.

Placement

Ottiene o imposta un valore che specifica la posizione della proprietà ContextMenu relativa alla proprietà PlacementTarget o PlacementRectangle.

PlacementRectangle

Ottiene o imposta l'area rispetto alla quale viene posizionato il menu di scelta rapida quando si apre.

PlacementTarget

Ottiene o imposta il controllo padre della proprietà ContextMenu.

ShowOnDisabled

Ottiene o imposta un valore che indica se la proprietà ContextMenu deve essere visualizzata quando il padre è inattivo.

VerticalOffset

Ottiene o imposta un valore che indica dove posizionare la proprietà ContextMenu lungo la direzione y rispetto al controllo padre.

Metodi

AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Aggiunge un gestore per l'evento associato ContextMenuClosing.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Aggiunge un gestore per l'evento associato ContextMenuOpening.

GetContextMenu(DependencyObject)

Ottiene il valore della proprietà ContextMenu dell'oggetto specificato.

GetHasDropShadow(DependencyObject)

Ottiene un valore che indica se la proprietà ContextMenu ha un'ombreggiatura.

GetHorizontalOffset(DependencyObject)

Ottiene il valore della proprietà HorizontalOffset dell'oggetto specificato.

GetIsEnabled(DependencyObject)

Ottiene il valore della proprietà IsEnabled dell'oggetto specificato.

GetPlacement(DependencyObject)

Ottiene il valore della proprietà Placement dell'oggetto specificato.

GetPlacementRectangle(DependencyObject)

Ottiene il valore della proprietà PlacementRectangle dell'oggetto specificato.

GetPlacementTarget(DependencyObject)

Ottiene il valore della proprietà PlacementTarget dell'oggetto specificato.

GetShowOnDisabled(DependencyObject)

Ottiene il valore della proprietà ShowOnDisabled dell'oggetto specificato.

GetVerticalOffset(DependencyObject)

Ottiene il valore della proprietà VerticalOffset dell'oggetto specificato.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Rimuove un gestore per l'evento associato ContextMenuClosing.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Rimuove un gestore per l'evento associato ContextMenuOpening.

SetContextMenu(DependencyObject, ContextMenu)

Imposta il valore della proprietà ContextMenu dell'oggetto specificato.

SetHasDropShadow(DependencyObject, Boolean)

Imposta un valore che indica se la proprietà ContextMenu ha un'ombreggiatura.

SetHorizontalOffset(DependencyObject, Double)

Imposta il valore della proprietà HorizontalOffset dell'oggetto specificato.

SetIsEnabled(DependencyObject, Boolean)

Imposta il valore della proprietà IsEnabled dell'oggetto specificato.

SetPlacement(DependencyObject, PlacementMode)

Imposta il valore della proprietà Placement dell'oggetto specificato.

SetPlacementRectangle(DependencyObject, Rect)

Imposta il valore della proprietà PlacementRectangle dell'oggetto specificato.

SetPlacementTarget(DependencyObject, UIElement)

Imposta il valore della proprietà PlacementTarget dell'oggetto specificato.

SetShowOnDisabled(DependencyObject, Boolean)

Imposta il valore della proprietà ShowOnDisabled dell'oggetto specificato.

SetVerticalOffset(DependencyObject, Double)

Imposta il valore della proprietà VerticalOffset dell'oggetto specificato.

Eventi associati

ContextMenuClosing

Si verifica quando si chiude il controllo ContextMenu.

ContextMenuOpening

Si verifica all'apertura di ContextMenu.

Si applica a

Vedi anche