表題の件で質問お願いします
現在画面上に
□全直 □1直 □2直 □3直
というチェックボックスが配置されています
①全直を押せば1,2,3直すべてがtrueになり
②1,2,3直すべて押せば全直がtrue
③全直が押されている状態で1,2,3直のいずれか一つを外せば全直が解除される
④1,2,3直すべてのチェックは外せない(最後に外そうとしたチェックボックスの切り替えはできなくする)
①②③の仕様は満たせたのですが
④をどう作ればいいか悩んでいます
Enableを使うのかと思うのですが、どのように最後のチェックボックスとしていするのか思いつきません
現在1,2,3直のイベントをひとまとめにしているのですが分けないと最後という指定は難しいでしょうか?
分かりにくい質問ですがアドバイスよろしくお願いします
C#
1 //全直ボタン操作 2 private void AllChecked(object sender, RoutedEventArgs e) 3 { 4 5 { 6 this.First.IsChecked = true; 7 this.Second.IsChecked = true; 8 this.Third.IsChecked = true; 9 } 10 } 11 12 13 14 //First,Second,Thirdの状態が変化した 15 private void CheckChanged(object sender, RoutedEventArgs e) 16 { 17 18 this.All.IsChecked = (this.First.IsChecked ?? false) && (this.Second.IsChecked ?? false) && (this.Third.IsChecked ?? false); 19 20 21 22 } 23 } 24 25 26
XAML
1<CheckBox x:Name="First" Content="1直" HorizontalAlignment="Left" Margin="749,105,0,0" VerticalAlignment="Top" Checked="CheckChanged" Unchecked="CheckChanged"/> 2 <CheckBox x:Name="Second" Content="2直" HorizontalAlignment="Left" Margin="809,105,0,0" VerticalAlignment="Top" Checked="CheckChanged" Unchecked="CheckChanged"/> 3 <CheckBox x:Name="Third" Content="3直" HorizontalAlignment="Left" Margin="873,105,0,0" VerticalAlignment="Top" Checked="CheckChanged" Unchecked="CheckChanged"/> 4 <CheckBox x:Name="All" Content="全直" HorizontalAlignment="Left" Margin="630,104,0,0" VerticalAlignment="Top" Checked="AllChecked" /> 5 6 7
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/06 03:23
2017/10/06 04:04
2017/10/06 23:41