C# 从CodeBehind到达DataTemplate元素
我有以下代码(大XAML文件的一部分):C# 从CodeBehind到达DataTemplate元素,c#,wpf,windows-8,windows-store-apps,C#,Wpf,Windows 8,Windows Store Apps,我有以下代码(大XAML文件的一部分): 当R2被点击时,我想改变R1矩形的背景,所以我需要从CodeBehind到达R1。我试图给元素命名为x:Name,但没有用 Thx要获得帮助,我建议您绑定矩形的颜色,而不是尝试查找UI元素。 将xaml更改为 <DataTemplate> <Grid> <Rectangle Name="R1" Fill="{Binding FirstBackground}"/> <Re
当R2被点击时,我想改变R1矩形的背景,所以我需要从CodeBehind到达R1。我试图给元素命名为x:Name,但没有用
Thx要获得帮助,我建议您绑定矩形的颜色,而不是尝试查找UI元素。 将xaml更改为
<DataTemplate>
<Grid>
<Rectangle Name="R1" Fill="{Binding FirstBackground}"/>
<Rectangle Name="R2" Tapped="RTEventHandler"/>
</Grid>
</DataTemplate>
确保MyViewModel类实现INotifyPropertyChanged尝试
(矩形)此选项。FindName(“R1”)
是否有帮助?只是一个链接不好,请发布代码,然后添加链接以供参考。
<DataTemplate>
<Grid>
<Rectangle Name="R1" Fill="{Binding FirstBackground}"/>
<Rectangle Name="R2" Tapped="RTEventHandler"/>
</Grid>
</DataTemplate>
var viewModel = (sender as Rectangle).DataContext as MyViewModel;
viewModel.FirstBackground = new SolidColorBrush(Colors.Green);