Wpf-dockpanel

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

WPF-DockPanel

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

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

DockPanelの階層

DockPanelの一般的に使用されるプロパティ

以下は、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の一般的に使用されるメソッド

以下は、DockPanelの最も一般的に使用されるメソッドです。

Sr. No. Method & Description
1

GetDock

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

2

SetDock

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

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

<Window x:Class = "WPFDockPanel.MainWindow"
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
   xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
   xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
   xmlns:local = "clr-namespace:WPFDockPanel"
   mc:Ignorable = "d" Title = "MainWindow" Height = "350" 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.Windows;
using System.Windows.Controls;

namespace WPFDockPanel {
  ///<summary>
     ///Interaction logic for MainWindow.xaml
  ///</summary>

   public partial class MainWindow : Window {

      public MainWindow() {
         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の出力

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

中央ボタン

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