Xaml-dockpanel

提供:Dev Guides
移動先:案内検索

XAML-DockPanel

DockPanelは、子要素を互いに対して水平方向または垂直方向に配置する領域を定義します。 DockPanelを使用すると、Dockプロパティを使用して、子要素を上、下、右、左、および中央に簡単にドッキングできます。

LastChildFillプロパティを使用すると、その要素に設定された他のドック値に関係なく、最後の子要素が残りのスペースを埋めます。 DockPanelクラスの階層的な継承は次のとおりです-

DockPanel Hierarchy

プロパティ

以下は、DockPanelの一般的に使用されるプロパティです。

Sr.No. Property & Description
1

Background

パネルのコンテンツ領域を塗りつぶすブラシを取得または設定します。 (Panelから継承)

2

Children

このPanelの子要素のUIElementCollectionを取得します。 (Panelから継承されます。)

3

Dock

親DockPanel内の子要素の位置を示す値を取得または設定します。

4

Height

要素の推奨される高さを取得または設定します。 (FrameworkElementから継承されます。)

5

ItemHeight

WrapPanelに含まれるすべての項目の高さを指定する値を取得または設定します。

6

ItemWidth

WrapPanelに含まれるすべての項目の幅を指定する値を取得または設定します。

7

LastChildFill

DockPanel内の最後の子要素が残りの利用可能なスペースを埋めるために伸びるかどうかを示す値を取得または設定します。

8

LogicalChildren

このPanel要素の論理子要素を反復処理できる列挙子を取得します。 (Panelから継承されます。)

9

LogicalOrientation

パネルが1次元のみのレイアウトをサポートする場合、パネルの方向。 (Panelから継承されます。)

10

Margin

要素の外側の余白を取得または設定します。 (FrameworkElementから継承されます。)

11

Name

要素の識別名を取得または設定します。 この名前は、イベントハンドラコードなどの分離コードがXAMLプロセッサによる処理中に構築された後にマークアップ要素を参照できるように、参照を提供します。 (FrameworkElementから継承されます。)

12

Orientation

子コンテンツが配置される次元を指定する値を取得または設定します。

13

Parent

この要素の論理的な親要素を取得します。 (FrameworkElementから継承されます。)

14

Resources

ローカルに定義されたリソースディクショナリを取得または設定します。 (FrameworkElementから継承されます。)

15

Style

この要素がレンダリングされるときに使用されるスタイルを取得または設定します。 (FrameworkElementから継承されます。)

16

Width

要素の幅を取得または設定します。 (FrameworkElementから継承されます。)

方法

以下に、DockPanelで一般的に使用されるメソッドを示します。

Sr.No. Method & Description
1

GetDock

指定されたUIElementのDock添付プロパティの値を取得します。

2

SetDock

Dock添付プロパティの値を指定された要素に設定します。

次の例は、DockPanelに子要素を追加する方法を示しています。 以下は、DockPanel内にボタンを作成するためのXAML実装です。

<Window x:Class = "XAMLDockPanel.Window1"
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
   Title = "MainWindow" Height = "300" Width = "604">

   <Grid>....
      <DockPanel LastChildFill = "True">
         <Button Content = "Top" DockPanel.Dock = "Top" Click = "Click_Me"/>
         <Button Content = "Bottom" DockPanel.Dock = "Bottom" Click = "Click_Me"/>
         <Button Content = "Left" Click = "Click_Me"/>
         <Button Content = "Right" DockPanel.Dock = "Right" Click = "Click_Me"/>
         <Button Content = "Center" Click = "Click_Me"/>
      </DockPanel>
   </Grid>

</Window>

以下は、イベントのC#での実装です-

using System;
using System.Windows;
using System.Windows.Controls;

namespace XAMLDockPanel {
  ///<summary>
     ///Interaction logic for Window1.xaml
  ///</summary>

   public partial class Window1 : Window {
      public Window1() {
         InitializeComponent();
      }
      private void Click_Me(object sender, RoutedEventArgs e) {
         Button btn = sender as Button;
         string str = btn.Content.ToString() + " button clicked" ;
         MessageBox.Show(str);
      }
   }
}

上記のコードをコンパイルして実行すると、次の出力が生成されます-

DockPanel出力

任意のボタンをクリックすると、メッセージも表示されます。 たとえば、センターにあるボタンをクリックすると、次のメッセージが表示されます-

DockPanel Output 1

上記のサンプルコードを実行し、他のプロパティも試してみることをお勧めします。