Windows phone 7 Windows Phone 7链接到数据模板内的事件

Windows phone 7 Windows Phone 7链接到数据模板内的事件,windows-phone-7,Windows Phone 7,我有一个列表框,我在其中创建了一个带有DataTemplate的Itemtemplate。我希望能够为datatemplate中的复选框和按钮编写事件,但它们似乎没有触发 这是我的xaml,基本上我只是尝试在事件函数中显示messagebox.show(“工作”) <ListBox x:Name="ListBox_Items" Margin="0,91,0,8" Foreground="#FF4BE5DB"> <ListBox.ItemTemplate>

我有一个列表框,我在其中创建了一个带有DataTemplate的Itemtemplate。我希望能够为datatemplate中的复选框和按钮编写事件,但它们似乎没有触发

这是我的xaml,基本上我只是尝试在事件函数中显示messagebox.show(“工作”)

<ListBox x:Name="ListBox_Items" Margin="0,91,0,8" Foreground="#FF4BE5DB">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal" Width="700">
                <CheckBox IsChecked="{Binding needPurchase}" Click="NeedPurchase_Click"  Name="CheckBox_NeedPurchase"/>
                <CheckBox IsChecked="False" Name="InCart"/>
                <StackPanel Orientation="Vertical">
                    <TextBlock Text="{Binding name}"/>
                    <TextBlock Text="{Binding storeLocation}"/>
                </StackPanel>
                <Button HorizontalAlignment="Right" Content="DELETE" Click="Button_Click" />
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>


对于初学者,您需要从模板中的所有控件中删除名称。如果列表中有10个项目,则将有10组名称相同的控件无法使用。

对于初学者,您需要从模板中的所有控件中删除该名称。如果列表中有10个项,那么将有10组同名的控件无法工作。

因为这些项是在DataTemplate中定义的,它们没有连接到父类的代码。如果要处理模板化项目的事件,则应考虑使用命令来代替。如果您不知道什么是命令(因此不太可能知道什么是MVVM),那么您应该查看一个解释。

因为这些项是在DataTemplate中定义的,它们没有连接到父类的代码。如果要处理模板化项目的事件,则应考虑使用命令来代替。如果您不知道什么是命令(因此不太可能知道什么是MVVM),那么您应该查看一个解释。

我同意使用命令是最好的方法


但是,如果仍要评估ItemTemplate/DataTemplate中的控件(并订阅某些事件),则可以使用VisualTreeHelper来完成此操作

我同意使用命令是最好的方法

但是,如果仍要评估ItemTemplate/DataTemplate中的控件(并订阅某些事件),则可以使用VisualTreeHelper来完成此操作