wpftoolkitのchecklistboxについて
https://github.com/xceedsoftware/wpftoolkit/wiki/CheckListBox
初期状態で、全アイテムを選択状態に指定して表示することは可能でしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答1件
0
ベストアンサー
可能です。
ViewModel の初期値に全ての選択項目を入れたプロパティを用意し、CheckListBox.SelectedItemsOverride にバインドします。
ポイントはそのプロパティの型に System.Collections.ObjectModel.ObservableCollection にすることです。
具体的なソースを示します。
MainWindowViewModel.cs
C#
1using System.Collections.Generic; 2using System.Collections.ObjectModel; 3 4namespace WpfApp1 5{ 6 public class MainWindowViewModel 7 { 8 public ObservableCollection<string> Items { get; set; } 9 public ObservableCollection<string> SelectedItems { get; set; } 10 11 public MainWindowViewModel() 12 { 13 // チェックボックスの候補一覧を準備する。 14 Items = new ObservableCollection<string>(new List<string>(new string[] { 15 "item1", 16 "item2", 17 "item3", 18 })); 19 20 // チェックボックスの候補一覧全てをチェック項目として追加する。 21 SelectedItems = new ObservableCollection<string>(Items); 22 } 23 } 24}
MainWindow.xaml
<Window x:Class="WpfApp1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" Title="MainWindow" Height="450" Width="800"> <!-- SelectedItemsOverride を使う --> <xctk:CheckListBox ItemsSource="{Binding Items}" SelectedItemsOverride="{Binding SelectedItems}" /> </Window>
以上は MVVM の例ですが、コードビハインドでも可能です。その場合、Loaded イベントメソッド上でコントロールの SelectedItems に値を入れて設定します。
投稿2018/04/26 11:54
総合スコア297
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/27 06:39
2018/04/27 10:39