Wpf-gridview

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

WPF-グリッドビュー

GridViewは、データ項目を行と列に表示するコントロールです。 実際には、ListViewはデータを表示します。 デフォルトでは、GridViewが含まれています。 GridViewクラスの階層的な継承は次のとおりです-

グリッドビューの階層

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

Sr.No. Property & Description
1

Background

コントロールの背景を提供するブラシを取得または設定します。 (Controlから継承)

2

BorderThickness

コントロールの境界線の太さを取得または設定します。 (Controlから継承)

3

DataContext

FrameworkElementがデータバインディングに参加するときのFrameworkContextのデータコンテキストを取得または設定します。 (FrameworkElementから継承されます)

4

FontFamily

コントロール内のテキストの表示に使用されるフォントを取得または設定します。 (Controlから継承)

5

FontSize

このコントロール内のテキストのサイズを取得または設定します。 (Controlから継承)

6

FontStyle

テキストがレンダリングされるスタイルを取得または設定します。 (Controlから継承)

7

FontWeight

指定したフォントの太さを取得または設定します。 (Controlから継承)

8

Foreground

前景色を説明するブラシを取得または設定します。 (Controlから継承)

9

GroupStyle

グループの各レベルの外観を定義するGroupStyleオブジェクトのコレクションを取得します。 (ItemsControlから継承)

10

Header

リストヘッダーのコンテンツを取得または設定します。 (ListViewBaseから継承)

11

Height

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

12

HorizontalAlignment

FrameworkElementがパネルやアイテムコントロールなどのレイアウトの親で構成されるときにFrameworkElementに適用される水平方向の配置特性を取得または設定します。 (FrameworkElementから継承されます)

13

HorizontalContentAlignment

コントロールのコンテンツの水平方向の配置を取得または設定します。 (Controlから継承)

14

Items

コントロールのコンテンツを生成するために使用されるコレクションを取得します。 (ItemsControlから継承)

15

ItemsSource

ItemsControlのコンテンツの生成に使用されるオブジェクトソースを取得または設定します。 (ItemsControlから継承)

16

ItemTemplate

各項目の表示に使用されるDataTemplateを取得または設定します。 (ItemsControlから継承)

17

Margin

FrameworkElementの外側のマージンを取得または設定します。 (FrameworkElementから継承されます)

18

Name

オブジェクトの識別名を取得または設定します。 XAMLプロセッサがXAMLマークアップからオブジェクトツリーを作成するとき、ランタイムコードはこの名前でXAMLで宣言されたオブジェクトを参照できます。 (FrameworkElementから継承されます)

19

Opacity

オブジェクトの不透明度を取得または設定します。 (UIElementから継承)

20

Resources

ローカルに定義されたリソースディクショナリを取得します。 XAMLでは、XAMLの暗黙的なコレクション構文を使用して、frameworkElement.Resourcesプロパティ要素の子オブジェクト要素としてリソース項目を確立できます。 (FrameworkElementから継承されます)

21

SelectedIndex

選択された項目のインデックスを取得または設定します。 (セレクターから継承)

22

SelectedItem

選択した項目を取得または設定します。 (セレクターから継承)

23

SelectedItems

現在選択されているアイテムを取得します。 (ListViewBaseから継承)

24

SelectedRanges

リストで現在選択されているアイテムを記述するItemIndexRangeオブジェクトのコレクションを取得します。 (ListViewBaseから継承)

25

SelectedValue

SelectedValuePathを使用して取得した、選択された項目の値を取得または設定します。 (セレクターから継承)

26

Style

レイアウトおよびレンダリング中にこのオブジェクトに適用されるインスタンススタイルを取得または設定します。 (FrameworkElementから継承されます)

27

VerticalAlignment

FrameworkElementがパネルや項目コントロールなどの親オブジェクトで構成されるときにFrameworkElementに適用される垂直方向の配置特性を取得または設定します。 (FrameworkElementから継承されます)

28

VerticalContentAlignment

コントロールのコンテンツの垂直方向の配置を取得または設定します。 (Controlから継承)

29

Width

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

以下は、GridViewで最も一般的に使用されるイベントです。

Sr.No. Event & Description
1

DataContextChanged

FrameworkElement.DataContextプロパティの値が変更されたときに発生します。 (FrameworkElementから継承されます)

2

DragEnter

入力システムが、この要素をターゲットとして基になるドラッグイベントを報告したときに発生します。 (UIElementから継承)

3

DragLeave

入力システムが、この要素を起点として基本的なドラッグイベントを報告したときに発生します。 (UIElementから継承)

4

DragOver

入力システムが潜在的なドロップターゲットとしてこの要素を持つ基本的なドラッグイベントを報告するときに発生します。 (UIElementから継承)

5

DragStarting

ドラッグ操作が開始されたときに発生します。 (UIElementから継承)

6

Drop

入力システムが、この要素をドロップターゲットとして基になるドロップイベントを報告したときに発生します。 (UIElementから継承)

7

ImageFailed

画像の取得またはフォーマットに関連するエラーがある場合に発生します。

8

ImageOpened

画像ソースがダウンロードされ、エラーなしでデコードされたときに発生します。 このイベントを使用して、画像ソースの自然なサイズを判断できます。

9

KeyDown

UIElementにフォーカスがあるときにキーボードキーが押されると発生します。 (UIElementから継承)

10

KeyUp

UIElementにフォーカスがあるときにキーボードキーが離されたとき。 (UIElementから継承)

以下に、GridViewの最も一般的に使用されるメソッドを示します。

Sr.No. Method & Description
1

Arrange

子オブジェクトを配置し、UIElementのサイズを決定します。 子要素のカスタムレイアウトを実装する親オブジェクトは、レイアウトオーバーライド実装からこのメソッドを呼び出して、再帰的なレイアウト更新を形成する必要があります。 (UIElementから継承)

2

ClearValue

依存関係プロパティのローカル値をクリアします。 (DependencyObjectから継承)

3

FindName

指定された識別子名を持つオブジェクトを取得します。 (FrameworkElementから継承されます)

4

GetValue

DependencyObjectから依存関係プロパティの現在の有効値を返します。 (DependencyObjectから継承)

5

ReadLocalValue

ローカル値が設定されている場合、依存関係プロパティのローカル値を返します。 (DependencyObjectから継承)

6

SetBinding

提供されたバインディングオブジェクトを使用して、FrameworkElementにバインディングをアタッチします。 (FrameworkElementから継承されます)

7

SetValue

DependencyObjectの依存関係プロパティのローカル値を設定します。 (DependencyObjectから継承)

 *概念をよりよく理解するために例を見てみましょう。* WPFGridView *という名前の新しいWPFプロジェクトを作成することから始めます。
* ツールボックスからグリッドビューコントロールをドラッグします。
* 次の例は、表のようなグリッドのデータを示しています。
* 次のXAMLコードは、GridViewを作成および実装します。
<Window x:Class = "WPFGridView.MainWindow"
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
   Title = "MainWindow" Height = "350" Width = "525">

   <Grid>
      <ListView HorizontalAlignment = "Left" Height = "299" Margin = "10,10,0,0"
         VerticalAlignment = "Top" Width = "497"Name = "MenList">

         <ListView.View>
            <GridView>
               <GridViewColumn Header = "Name" DisplayMemberBinding = "{Binding Name}"
                  Width = "100"/>

               <GridViewColumn Header = "ID" DisplayMemberBinding = "{Binding ID}"
                  Width = "100"/>

               <GridViewColumn Header = "Age" DisplayMemberBinding = "{Binding Age}"
                  Width = "100"/>

            </GridView>
         </ListView.View>

      </ListView>
   </Grid>

</Window>

personクラスが実装されている* C#実装*を次に示します。

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

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

   public partial class MainWindow : Window {

      public MainWindow() {
         InitializeComponent();

         MenList.Items.Add(new Person() {Name = "Ali", ID = "123A", Age = 20 });
         MenList.Items.Add(new Person() {Name = "Akram",ID= "456X", Age = 35 });
         MenList.Items.Add(new Person() {Name = "Salman",ID="333E", Age = 49 });
      }
   }

   class Person {
      public string Name { get; set; }
      public string ID { get; set; }
      public int Age { get; set; }
   }

}

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

Gridviewの出力

上記のサンプルコードを実行し、GridViewの他のプロパティとイベントを試すことをお勧めします。