ContextMenuService Sınıf

Tanım

bir ContextMenugörüntülemek için sistem uygulamasını sağlar.

public ref class ContextMenuService abstract sealed
public static class ContextMenuService
type ContextMenuService = class
Public Class ContextMenuService
Devralma
ContextMenuService

Örnekler

Aşağıdaki örnek, aynı ContextMenu komutu iki düğmeye atar ve HasDropShadow, Placement, PlacementRectangle, HorizontalOffsetve VerticalOffset özelliklerini her düğme için farklı konumlara ayarlamak üzere ayarlar ContextMenu .

<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>

Aşağıdaki örnekte, devre dışı bırakılmış bir düğmede görüntülemek ContextMenu için hizmetin nasıl kullanılacağı gösterilmektedir. Bağlam menüsünün ShowOnDisabled üst öğesi olan düğmede özelliğini ayarladığınıza dikkat edin.

<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>

Açıklamalar

sınıfı, ContextMenuService bağlam menüsünün görünümünü ve konumunu belirtmek için kullanılabilecek ekli özellikler sağlar. sınıfındaki özelliklerin ContextMenuService çoğu da tarafından ContextMenutanımlanır. Bazen sınıfını kullanarak ContextMenuService özellikleri ayarlamak, özelliklerini bir ContextMenuüzerinde ayarlamaktan daha kullanışlıdır. Örneğin, birden çok öğe tarafından paylaşılacak bir ContextMenu oluşturabilirsiniz, ancak sınıfını ContextMenuService kullanarak her öğe için öğesinin ContextMenu farklı bir konumunu belirtebilirsiniz. Aşağıdaki özellikler ve ContextMenuService sınıfları tarafından ContextMenu tanımlanır. Bu özelliklerden herhangi biri hem hem de ContextMenuContextMenuServiceüzerinde ayarlanırsa, özelliğinden ContextMenuService özellik değeri kullanılır.

Menüleri devre dışı bırakılmış öğelerde görüntülemek için de kullanabilirsiniz ContextMenuService .

Alanlar

ContextMenuClosingEvent

Yönlendirilen ContextMenuClosing olayı tanımlar.

ContextMenuOpeningEvent

Ekli ContextMenuOpening olayı tanımlar.

ContextMenuProperty

ContextMenu Ekli özelliği tanımlar.

HasDropShadowProperty

HasDropShadow Ekli özelliği tanımlar.

HorizontalOffsetProperty

HorizontalOffset Ekli özelliği tanımlar.

IsEnabledProperty

IsEnabled Ekli özelliği tanımlar.

PlacementProperty

Placement Ekli özelliği tanımlar.

PlacementRectangleProperty

PlacementRectangle Ekli özelliği tanımlar.

PlacementTargetProperty

PlacementTarget Ekli özelliği tanımlar.

ShowOnDisabledProperty

ShowOnDisabled Ekli özelliği tanımlar.

VerticalOffsetProperty

VerticalOffset Ekli özelliği tanımlar.

İliştirilmiş Özellikler

ContextMenu

bir ContextMenuöğesinin içeriğini alır veya ayarlar.

HasDropShadow

gölge efektinin etkin olup olmadığını ContextMenu belirten bir değer alır veya ayarlar.

HorizontalOffset

Üst denetime göre x yönü boyunca nereye yerleştirildiğini ContextMenu belirten bir değer alır veya ayarlar.

IsEnabled

öğesinin gösterilip ContextMenu gösterilmeyebileceğini belirten bir değer alır veya ayarlar.

Placement

veya ile ilgili PlacementTarget yerleşimini ContextMenu belirten bir değer alır veya PlacementRectangleayarlar.

PlacementRectangle

Bağlam menüsünün açıldığında konumlandırıldığı alanı alır veya ayarlar.

PlacementTarget

üst denetimini ContextMenualır veya ayarlar.

ShowOnDisabled

Üst öğesi gri olduğunda gösterilmesi gerekip gerekmediğini ContextMenu belirten bir değer alır veya ayarlar.

VerticalOffset

Üst denetime göre y yönü boyunca nereye yerleştirildiğini ContextMenu belirten bir değer alır veya ayarlar.

Yöntemler

AddContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Ekli olay için ContextMenuClosing bir işleyici ekler.

AddContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Ekli olay için ContextMenuOpening bir işleyici ekler.

GetContextMenu(DependencyObject)

Belirtilen nesnenin ContextMenu özelliğinin değerini alır.

GetHasDropShadow(DependencyObject)

öğesinin gölgesinin olup olmadığını ContextMenu gösteren bir değer alır.

GetHorizontalOffset(DependencyObject)

Belirtilen nesnenin HorizontalOffset özelliğinin değerini alır.

GetIsEnabled(DependencyObject)

Belirtilen nesnenin IsEnabled özelliğinin değerini alır.

GetPlacement(DependencyObject)

Belirtilen nesnenin Placement özelliğinin değerini alır.

GetPlacementRectangle(DependencyObject)

Belirtilen nesnenin PlacementRectangle özelliğinin değerini alır.

GetPlacementTarget(DependencyObject)

Belirtilen nesnenin PlacementTarget özelliğinin değerini alır.

GetShowOnDisabled(DependencyObject)

Belirtilen nesnenin ShowOnDisabled özelliğinin değerini alır.

GetVerticalOffset(DependencyObject)

Belirtilen nesnenin VerticalOffset özelliğinin değerini alır.

RemoveContextMenuClosingHandler(DependencyObject, ContextMenuEventHandler)

Ekli olay için ContextMenuClosing bir işleyici kaldırır.

RemoveContextMenuOpeningHandler(DependencyObject, ContextMenuEventHandler)

Ekli olay için ContextMenuOpening bir işleyici kaldırır.

SetContextMenu(DependencyObject, ContextMenu)

Belirtilen nesnenin ContextMenu özelliğinin değerini ayarlar.

SetHasDropShadow(DependencyObject, Boolean)

öğesinin gölgesinin olup olmadığını ContextMenu gösteren bir değer ayarlar.

SetHorizontalOffset(DependencyObject, Double)

Belirtilen nesnenin HorizontalOffset özelliğinin değerini ayarlar.

SetIsEnabled(DependencyObject, Boolean)

Belirtilen nesnenin IsEnabled özelliğinin değerini ayarlar.

SetPlacement(DependencyObject, PlacementMode)

Belirtilen nesnenin Placement özelliğinin değerini ayarlar.

SetPlacementRectangle(DependencyObject, Rect)

Belirtilen nesnenin PlacementRectangle özelliğinin değerini ayarlar.

SetPlacementTarget(DependencyObject, UIElement)

Belirtilen nesnenin PlacementTarget özelliğinin değerini ayarlar.

SetShowOnDisabled(DependencyObject, Boolean)

Belirtilen nesnenin ShowOnDisabled özelliğinin değerini ayarlar.

SetVerticalOffset(DependencyObject, Double)

Belirtilen nesnenin VerticalOffset özelliğinin değerini ayarlar.

İliştirilmiş Olaylar

ContextMenuClosing

Kapatıldığında ContextMenu gerçekleşir.

ContextMenuOpening

ContextMenu açıldığında gerçekleşir.

Şunlara uygulanır

Ayrıca bkz.