我有ListBox:
<ListBox HorizontalAlignment="Left" Name="betOdds" VerticalAlignment="Top">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<CheckBox Content="{Binding Name}" IsChecked="{Binding IsChecked}" HorizontalAlignment="Stretch"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
OddsList为ObservableCollection<CheckBoxListItem>
我使用不同的对象初始化此集合,其名称类似于&#34; TEST&#34;,&#34; TEST_1&#34;,&#34; TEST_2&#34;,&#34; OVERFLOW&#34;等(某些名称包含_
符号)。
当我将此集合绑定到ItemsSource
ListBox
并启动应用时,我会看到ListItems
名称中没有_
。< / p>
为什么?
当我选择一些内容为空的项目时,它仍然是带有_
符号的相同元素。
答案 0 :(得分:3)
尝试将Content
属性设置为TextBlock
:
<ListBox HorizontalAlignment="Left" Name="betOdds" VerticalAlignment="Top">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<CheckBox IsChecked="{Binding IsChecked}" HorizontalAlignment="Stretch">
<CheckBox.Content>
<TextBlock Text="{Binding Name}" />
</CheckBox.Content>
</CheckBox>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
以下划线开头的字符可能会转换为访问密钥:http://www.c-sharpcorner.com/UploadFile/mahesh/wpf-accesstext/。但您可以将Content
设置为TextBlock
以解决此问题。