==WPF コントロールライブラリ==
[[WPF][Silverlight]]
{{amazon|4798114200}}
*CheckBoxとRadioButtonは、いずれも IsChecked(データモデル)プロパティとIsThreeState(対話モデル)プロパティをサポートするトグルボタンを表す。
*IsThreeStateがTrueの場合、Checked、Unchecked、Indeterminate(IsThreeStateがFalseの場合この状態にはならない)を切り替えることが出来る。
<<StackPanel Name="MainPanel">> <<Button Margin="5" VerticalAlignment="Top">>Button<</Button>> <<RadioButton>>Radio<</RadioButton>> <<RadioButton IsChecked="True">>Radio<</RadioButton>> <<RadioButton>>Radio<</RadioButton>> <<CheckBox>>Check<</CheckBox>> <<CheckBox>>Check<</CheckBox>> <<CheckBox IsThreeState="True">>Check<</CheckBox>> <</StackPanel>>
[[File:1443_wpf_button.jpg]]
====ItemSourceプロパティ====
*リストが表示するデータ項目のコレクションをリストコントロールに提供
<<blockquote>>リストコントロールの外部にあるデータを維持できる<</blockquote>>
string[] items = { "1", "2", "3" };
var list = new ListBox();
*オブジェクトモデルの観点からいうとこれらはほぼ同一
*ItemSourceプロパティを使用することが推奨され、IEnumerableを実装する任意の型をソースとして使用できる。
*.NET3.0からこれらのシナリオで使用するために特別に設計されたObservableCollection<<T>>という新しいコレクションが提供される。*ObservableCollection<<T>>は、リストシナリオのデータソースとして変更追跡のための複数のインターフェースを実装している
*まったく新しいテンプレートを記述しなくてもコントロールの外観を調整出来るようになる一連のプロパティを提供。