2009-03-29 8 views
0

を結合した後、私は次のXAMLを持っているすべての項目を選択する:アイテムのリストをバインドは、WPFのリストビュー

<ListView x:Name="debitOrderItems" ItemsSource="{Binding DebitOrderItems}"> 
    <ListView.ItemTemplate> 
    <DataTemplate> 
     <CheckBox x:Name="checkbox" Content="{Binding}" IsChecked="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}}, Path=IsSelected}" /> 
    </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

は正常に動作し、私はチェックボックスで、美しいリストビューを取得しますが、私はそれらすべてをすぐに選択したいと思います。 ListViewにはSelectAll()メソッドがありますが、いつ呼び出すことができますか?私はそれにDebitOrderItemsをpopulatする前に、私はそれをリンクとしてDataContextChangedは動作しません。

答えて

3

あなたはLoadedイベントでこれを行うことができます:私はあなたのデザインを問うだろう、と述べた

public Window() 
{ 
    InitializeComponent(); 
    Loaded += delegate 
    { 
     _listView.SelectAll(); 
    }; 
} 

。通常、リストの各項目のビューモデルがあり、IsCheckedプロパティをそのビューモデルのプロパティにバインドします。

+0

私はXAMLでそれを行う方法をもっと期待していましたが、 –

+0

XAMLで行う方法は、ビューモデルを使用する方法です。 IsCheckedをビューモデルのプロパティにバインドさせて、プロパティのデフォルト値がtrueであることを確認してください。 –

+0

ありがとうございましたケント、私は私のデザインを見て、再評価するでしょう... –

関連する問題