次の方法で共有


ContextMenuService.HorizontalOffset 添付プロパティ

定義

x 方向に沿って親コントロールを基準として ContextMenu を配置する場所を示す値を取得または設定します。

see GetHorizontalOffset, and SetHorizontalOffset
see GetHorizontalOffset, and SetHorizontalOffset
see GetHorizontalOffset, and SetHorizontalOffset

次の例では、同じ ContextMenu を 2 つのボタンに割り当て、、PlacementPlacementRectangleHorizontalOffsetおよび VerticalOffset プロパティを設定HasDropShadowして、 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>

注釈

、および VerticalOffsetProperty の各プロパティをPlacementTargetPlacementRectanglePlacementHorizontalOffset設定することで、 をContextMenu配置できます。 これらのプロパティは、 の場合 Popupと同じように動作します。 詳細については、「Popup Placement Behavior」を参照してください。

依存プロパティ情報

識別子フィールド HorizontalOffsetProperty
に設定されたメタデータ プロパティ true なし

XAML 属性の使用方法

<object HorizontalOffset="double"/>  
- or -  
<object HorizontalOffset="qualifiedDouble"/>  

XAML 値

double
Double

値の Double 文字列表現。 これは、デバイスに依存しない単位 (1/96 インチ) の測定として解釈されます。 文字列に小数点を明示的に含める必要はありません。 たとえば、 の 1 値は許容されます。

qualifiedDouble
上で説明した double 値の後に、次のいずれかの単位宣言文字列 (pxin、、 cmpt) が続きます。

px (既定値) はデバイスに依存しない単位 (ユニットあたり 1/96 インチ) です

in はインチ。1in==96px

cm はセンチメートルです。1cm==(96/2.54) px

pt はポイント。1pt==(96/72) px

適用対象

こちらもご覧ください