Visual Studio / WPF > 09 CheckBox与可空数据类型 > CheckBoxのIsCheckedに関連して、null許容型関連の情報


動作環境
Windows 7 Pro (32bit)
Microsoft Visual Studio 2017 Community
Sublime Text 2

09 CheckBox与可空数据类型
https://www.youtube.com/watch?v=C7Uoy1CVYJU&index=31&list=WL

関連 Visual Studio / WPF > C# > bool? / Nullable: NULL許容型
関連 Visual Studio / WPF > ダイアログ > SaveFileDialog > FileNamesとFileNameで選択ファイルを取得できる / MultiSelectプロパティはない

CheckBoxのIsCheckedプロパティ(?)の戻り値に関連してint ?などのNullable型について紹介している。

5:15あたり

int i = null;

int型にnullを代入するとエラーになる例を示している。
int型以外として、booleam(ブーラと発音)、decimal, DateTimeなど。

6:35あたり

int? il = null;
DateTime? dl = null;

(個人的にはNullable<int> il = null;のような書き方が読みやすいように思うが、そのうち?表記に慣れるかもしれない。しかしながら、ソースリーディングでの検索時には?よりもNullableの方が候補をしぼりこめると思う。)

?をつけることで、nullを代入できるとの例。

8:23あたり

int? i3 = null;
int i4 = i3;

nullが代入されたi3をnullableでないi4に代入したらだめ、とのこと。
試したところ、ビルドエラーとなった。

int? i3 = null;
int i4 = (int)i3;

上記のように明示的な型変換をするとビルドエラーは出なくなるが、下記のような実行時エラーになる。

16:25あたり

CheckBoxコントロールのIsCheckedの戻り値をbool ?で受ける例が紹介されている。

実際にためしたところ、nullが入る場合が不明だった。チェックがされていない時にfalseが入っていた。

RadioButtonの不定のような状態をCheckBoxでも持つのだろうか?

中国語

時々話しているキーワード