Quantcast
Channel: かずきのBlog@hatena
Viewing all articles
Browse latest Browse all 1387

WPF4.5入門 その32 「CheckBoxコントロール」

$
0
0

CheckBoxコントロールは、オン・オフ・その他の状態を表すコントロールです。一般的に以下のような見た目をしています。

f:id:okazuki:20140812225842p:plain

上記の画面のXAMLを以下に示します。

<StackPanel><CheckBox Content="オン"IsChecked="True"/><CheckBox Content="オフ"IsChecked="False"/><CheckBox Content="その他"IsChecked="{x:Null}"IsThreeState="True"/></StackPanel>

CheckBoxコントロールの代表的なプロパティを以下に示します。

プロパティ説明
public Nullable IsChecked { get; set; }オンの時にtrue、オフの時にfalse、その他の時にnullが設定されています。
public bool IsThreeState { get; set; }CheckBoxがオン・オフの2つの状態ではなく、オン・オフ・その他の3つの状態を持つかどうかを表します。trueのときに、その他の状態を持つようになります。デフォルト値はfalseです。

また、CheckBoxコントロールは、選択状態が変わったことを検知するための以下のイベントも備えています。

イベント説明
CheckedIsCheckedプロパティがtrueになったときに呼び出されます。
UncheckedIsCheckedプロパティがfalseになったときに呼び出されます。
IndeterminateIsCheckedプロパティがnullになったときに呼び出されます。

これらのイベントを使うことで、選択状態に応じた処理を行うことが出来ます。 CheckBoxのチェック状態に応じてTextBlockの表示を切り替えるプログラムは以下のようになります。

<StackPanel><CheckBox IsThreeState="True"Content="CheckBox"Checked="CheckBox_Checked"Unchecked="CheckBox_Unchecked"Indeterminate="CheckBox_Indeterminate"/><TextBlock x:Name="textBlock"Text="オフ"/></StackPanel>
privatevoid CheckBox_Checked(object sender, RoutedEventArgs e)
{
    this.textBlock.Text = "オン";
}

privatevoid CheckBox_Unchecked(object sender, RoutedEventArgs e)
{
    this.textBlock.Text = "オフ";
}

privatevoid CheckBox_Indeterminate(object sender, RoutedEventArgs e)
{
    this.textBlock.Text = "その他";
}

実行すると以下のような結果になります。

f:id:okazuki:20140812230229p:plain

過去記事


Viewing all articles
Browse latest Browse all 1387

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>