2017-07-19 112 views
0

我可以通過XAML僅選擇WPF列表框中的所有項目嗎?WPF列表框選擇僅使用xaml的所有項目

我跟着這個問題以及WPF Listbox and Select All但它不工作。 我的XAML代碼如下:

<ListBox SelectionMode="Multiple" Name="listBox"> 
    <ListBox.InputBindings> 
     <KeyBinding Command="ApplicationCommands.SelectAll" Modifiers="Ctrl" Key="A" /> 
    </ListBox.InputBindings> 
    <ListBox.CommandBindings> 
     <CommandBinding Command="ApplicationCommands.SelectAll" /> 
    </ListBox.CommandBindings> 
    <ListBoxItem>List Item 1</ListBoxItem> 
    <ListBoxItem>List Item 2</ListBoxItem> 
    <ListBoxItem>List Item 3</ListBoxItem> 
    <ListBoxItem>List Item 4</ListBoxItem> 
    <ListBoxItem>List Item 5</ListBoxItem> 
</ListBox> 

是選擇所有可能僅通過XAML?

+0

* XAML only *對你來說意味着什麼,因爲你正在使用'Command'? –

+0

我的意思是沒有任何代碼在c#/ vb中的代碼。我可以刪除命令綁定。 –

+0

我必須在poweshell中使用這個XAML視圖。所以後面的代碼不會在那裏工作。 –

回答

1

不,ListBox有它自己的SelectAllCommand但它是私人的,所以你不能綁定它。它不會爲您處理ApplicationCommands.SelectAll命令。你需要通過處理Executed事件CommandBinding要做到這一點你自己:

private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e) 
{ 
    listBox.SelectAll(); 
} 

XAML是一種標記語言,而不是一種編程語言。

相關問題