2012-05-16 51 views
2

工作,我用一個列表框和列表框風格從這裏:http://viblend.com/products/net/wpf/controls/free-wpf-controls.aspx列表框樣式的選擇不符合的DataTemplate

,看起來像這樣:

​​

但如果我點擊一個項目它會未標記爲選定項目。 如果我使用沒有datatemplate所有工作正常。那麼,有誰知道爲什麼? 這裏工作示例:

<ListBox x:Name="listBox" Style="{StaticResource Office2010SilverListBoxStyle}"> 
    <ListBoxItem Style="{StaticResource Office2010SilverListBoxItemStyle}">1. Frame</ListBoxItem> 
    <ListBoxItem Style="{StaticResource Office2010SilverListBoxItemStyle}">2. Frame</ListBoxItem> 
    <ListBoxItem Style="{StaticResource Office2010SilverListBoxItemStyle}">3. Frame</ListBoxItem> 
    <ListBoxItem Style="{StaticResource Office2010SilverListBoxItemStyle}">4. Frame</ListBoxItem> 
    <ListBoxItem Style="{StaticResource Office2010SilverListBoxItemStyle}">5. Frame</ListBoxItem> 
    <ListBoxItem Style="{StaticResource Office2010SilverListBoxItemStyle}">6. Frame</ListBoxItem> 
</ListBox>--> 

回答

1

DataTemplate應該包含ListBoxItem,將由ListBox控制已經建立,在你的例子會出現在ListBoxItem一個ListBoxItem,混淆選擇。

此外,你應該通過ItemContainerStyle應用風格的項目。 (據我知道自動生成的,如果你添加的數據直接或通過ItemsSource,如果添加ListBoxItems直接既DataTemplateItemContainerStyle將被忽略,這是創建ListBoxItems這僅適用)

參見:Data Templating Overview

+0

好的,我會盡量多謝 –