我有一个名为 Name1 和 Name2 的两个属性。
我如何检查这两个属性是否具有相同的值,即不使用 XAML 中的数据触发器。
Name1 属性在 Class1 中,而 Name2 属性在 Class2 中。
更详细地说,
我有一个名为 Pages 的类,它具有属性 Name1。在应用程序加载时,我将创建一个 List 对象并向该列表添加一些值。在 XAML 中,我会将它绑定到 ItemSource。
我有另一个名为 CurrentPage 的类,它再次具有名为 Name2 的属性。
在 ItemSource.ItemTemplate 中,我添加了一个标签控件来显示所有 Pages 的名称。
<ItemsControl ItemsSource="{Binding Pages}"> <ItemsControl.ItemsPanel> <ItemsPanelTemplate> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,2,0,2"></StackPanel> </ItemsPanelTemplate> </ItemsControl.ItemsPanel> <ItemsControl.ItemTemplate> <DataTemplate> <Label Content="{Binding Name1}" FontSize="15" FontFamily="Arial" FontWeight="DemiBold"> <Label.Style> <Style TargetType="Label"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="Label"> <Border Name="Border" HorizontalAlignment="Center" BorderBrush="Black" BorderThickness="1" CornerRadius="0,20,20,0" Width="100"> <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"></ContentPresenter> </Border> <ControlTemplate.Triggers> <DataTrigger Binding="{Binding CurrentPage.Name2}" Value="Name1"> <Setter Property="Background" TargetName="Border" Value="Yellow"></Setter> </DataTrigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> </Label.Style> </Label> </DataTemplate> </ItemsControl.ItemTemplate>
如果标签的 BG 颜色等于当前页面内容,我正在尝试更改它。
但是我收到错误并且样式没有加载。我知道我在比较 Name2 和 Name1 的部分是错误的..() 请任何人帮助我