Wpf-listbox

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

WPF-リストボックス

ListBoxは、ユーザーのアイテム選択にアイテムのリストを提供するコントロールです。 ユーザーは、事前定義されたアイテムのリストから一度に1つ以上のアイテムを選択できます。 ListBoxでは、ユーザーの操作なしで、複数のオプションが常にユーザーに表示されます。 ListBoxクラスの階層的な継承は次のとおりです-

リストボックスの階層

以下は、ListBoxクラスの一般的に使用されるプロパティです

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

Sr.No. Property & Description
1

Background

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

2

BorderThickness

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

3

FontFamily

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

4

FontSize

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

5

FontStyle

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

6

FontWeight

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

7

Foreground

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

8

GroupStyle

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

9

Height

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

10

HorizontalAlignment

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

11

IsEnabled

ユーザーがコントロールを操作できるかどうかを示す値を取得または設定します。 (Controlから継承)

12

Item

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

13

ItemSource

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

14

Margin

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

15

Name

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

16

Opacity

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

17

SelectedIndex

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

18

SelectedItem

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

19

SelectedValue

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

20

Style

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

21

VerticalAlignment

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

22

Width

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

ListBoxの一般的に使用されるイベント

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

Sr.No. Event & Description
1

DragEnter

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

2

DragLeave

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

3

DragOver

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

4

DragStarting

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

5

Drop

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

6

DropCompleted

ドラッグアンドドロップ操作が終了したときに発生します。 (UIElementから継承)

7

GotFocus

UIElementがフォーカスを受け取ったときに発生します。 (UIElementから継承)

8

IsEnabledChanged

IsEnabledプロパティが変更されたときに発生します。 (Controlから継承)

9

KeyDown

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

10

KeyUp

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

11

LostFocus

UIElementがフォーカスを失ったときに発生します。 (UIElementから継承)

12

SelectionChanged

現在選択されている項目が変更されたときに発生します。 (セレクターから継承)

13

SizeChanged

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

ListBoxの一般的に使用されるメソッド

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

Sr.No. Method & Description
1

Arrange

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

2

FindName

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

3

Focus

コントロールにフォーカスを設定しようとします。 (Controlから継承)

4

GetValue

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

5

IndexFromContainer

指定され生成されたコンテナを持つアイテムのインデックスを返します。 (ItemsControlから継承)

6

OnDragEnter

DragEnterイベントが発生する前に呼び出されます。 (Controlから継承)

7

OnDragLeave

DragLeaveイベントが発生する前に呼び出されます。 (Controlから継承)

8

OnDragOver

DragOverイベントが発生する前に呼び出されます。 (Controlから継承)

9

OnDrop

Dropイベントが発生する前に呼び出されます。 (Controlから継承)

10

OnKeyDown

KeyDownイベントが発生する前に呼び出されます。 (Controlから継承)

11

OnKeyUp

KeyUpイベントが発生する前に呼び出されます。 (Controlから継承)

12

OnLostFocus

LostFocusイベントが発生する前に呼び出されます。 (Controlから継承)

13

ReadLocalValue

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

14

SetBinding

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

15

SetValue

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

  • WPFListBoxControl という名前の新しいWPFプロジェクトを作成しましょう。
  • ツールボックスから1つのリストボックスと1つのテキストボックスをドラッグします。
  • ユーザーがListBoxから項目を選択すると、TextBoxにも表示されます。
  • ListBoxとTextBoxが作成され、いくつかのプロパティで初期化されるXAMLコードを次に示します。
<Window x:Class = "WPFListBoxControl.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:WPFListBoxControl"
   mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604">

   <Grid>
      <ListBox Name = "listbox" Margin = "118,77,293,103">
         <ListBoxItem Content = "XAML Tutorials"/>
         <ListBoxItem Content = "WPF Tutorials"/>
         <ListBoxItem Content = "Silverlight Tutorials"/>
         <ListBoxItem Content = "Windows 10 Tutorials"/>
         <ListBoxItem Content = "iOS Tutorials"/>
      </ListBox>

      <TextBox Height = "23" x:Name = "textBox1" Width = "120" Margin = "361,116,0,0"
         HorizontalAlignment = "Left" VerticalAlignment = "Top"
         Text="{Binding SelectedItem.Content, ElementName=listbox}"/>
   </Grid>

</Window>

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

リストボックスの出力

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