WPF列表框选择更改未在项目单击时触发

时间:2013-03-05 06:19:18

标签: wpf listbox wpf-controls listboxitem

在我的wpf应用程序中,当我选择listboxItem时,listbox的SelectionChanged事件未触发。但是,当我点击外边距时事件会触发。 看看下面的按钮。

enter image description here

所以基本上,当我点击红色边框内的部分(右图)时,选择更改事件不会触发,但是当我点击外边框(白色部分)时,选择更改会触发。

在搜索问题时,我不确定,但我发现它可能是由于事件隧道导致的问题。但是我对隧道技术只有一点了解。

所以任何人都可以帮助我如何工作,以便当我点击listboxitem(红色部分)时选择改变了火焰

如果我需要进一步澄清问题,请告诉我。 我也把列表框代码放在这里

<ListBox x:Name="Listbox1" SelectionChanged="listBox1_SelectionChanged">
                        <ListBox.ItemTemplate>
                            <DataTemplate>
                                <ListBoxItem Margin="10" Content="{Binding Name}" Height="25" 
                                             BorderBrush="#FF404040" BorderThickness="0,0.25" />
                            </DataTemplate>
                        </ListBox.ItemTemplate>
                    </ListBox>

感谢您的期待

1 个答案:

答案 0 :(得分:3)

我想不出您希望在ListBoxItem的{​​{1}}内有DataTemplate的原因。 ItemTemplate的{​​{1}}会自动为ListBoxItem的每个元素生成,而您在DataTemplate中的任何内容都会被用作ListBox内容。如果您最终在ListBoxItem内有ListBoxItem。这可能是原因。

以这种方式尝试:

ListBoxItem