我正在创建一个通用Windows应用程序中的模板控件。问题在于,在``中,`TemplateBinding`无法正常工作。似乎问题是因为它定义在一个`DataTemplate`内部。这是我控件所应用的`Style`和模板。<Style TargetType="local:CoordinatesControl"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="local:CoordinatesControl"> <ListView ItemsSource="{TemplateBinding Numbers}"> <ListView.ItemTemplate> <DataTemplate> <Button Content="{Binding}" Command="{TemplateBinding AddCharCommand}" /> </DataTemplate> </ListView.ItemTemplate> </ListView> </ControlTemplate> </Setter.Value> </Setter> </Style>
你不能在DataTemplate内使用TemplateBinding,但有一些解决方法: 你可以创建一个代理到需要的带有DataContext隐藏元素。更多详情请查看此处。 你可以创建一种类似于在WPF中查找祖先的RelativeSource绑定。更多详情请查看此处。
TemplateBinding
。我们应该能够将命令添加到Number
类中。 - Jayden