请问ItemTemplate定义在资源文件中,如何使ItemTemplate中的UIElement关联事件处理方法?
问题描述:
Test.xaml中有一个ListBox,简单定义如下:
<ListBox Name = "listBox" ItemTemplate = "{StaticResource ListBoxItemTemplate}"/>
<DataTemplate x:Key = "ListBoxItemTemplate"> <StackPanel> <Button Name="myBtn"/> <Text Text = {Binding}/> </StackPanel></DataTemplate>
<ListBox Name = "listBox"> <ListBox.ItemTemplate> <DataTemplate x:Name = "ListBoxItemTemplate"> <StackPanel> <Button Name="myBtn" Click="OnClick"/> <Text Text = {Binding}/> </StackPanel> </DataTemplate> </ListBox.ItemTemplate></ListBox>
<DataTemplate x:Key = "ListBoxItemTemplate"> <StackPanel> <Button Name="myBtn" Command={Binding yourCommand}/> <Text Text = {Binding}/> </StackPanel></DataTemplate>
[解决办法]
那直接在Click事件中写方法,这样不行吗
[解决办法]
加了个Click就叫臃肿了?而且DataTemplate本身就不为重用打算的,多个ListBox使用同一个DataTemplate那才叫奇怪了呢。