【问题标题】:How to write conditional statements in WPF? [duplicate]如何在 WPF 中编写条件语句? [复制]
【发布时间】:2010-12-25 16:41:24
【问题描述】:

可能重复:
XAML Conditional Compilation

我是 WPF 新手。我只需要在 xaml 中编写一小段代码,为此我需要知道 WPF 中等效的 if 条件。这里有人可以帮忙吗?

【问题讨论】:

  • 如果你想写条件,你应该使用后面的代码。你到底想在这里做什么?
  • 我今天有一个类似的问题,但没有发现这里接受的答案有用。我又问了一遍,得到了答案,在这里:stackoverflow.com/questions/68499748/…

标签: wpf conditional


【解决方案1】:

您是否在追求类似“如果 (x == 1),将此控件的背景设为蓝色”之类的内容?如果那是您所追求的,您可以使用数据触发器。这是一个示例,它根据某些数据有条件地更改控件的背景颜色。在此示例中,我将其作为样式的一部分并稍后在某些控件中使用。

<UserControl.Resources>
    <Style x:Key="ColoringStyle" TargetType="{x:Type DockPanel}">
        <Style.Triggers>
            <DataTrigger Binding="{Binding Path=Coloring}" Value="Red">
                <Setter Property="Background" Value="#33FF0000"></Setter>
            </DataTrigger>
            <DataTrigger Binding="{Binding Path=Coloring}" Value="Blue">
                <Setter Property="Background" Value="#330000FF"></Setter>
            </DataTrigger>
            <DataTrigger Binding="{Binding Path=Coloring}" Value="White">
                <Setter Property="Background" Value="#33FFFFFF"></Setter>
            </DataTrigger>
        </Style.Triggers>
    </Style>
</UserControl.Resources>

如果“Coloring”将值更改为“Red”、“Blue”或“White”,它将相应地更新 DockPanel 的背景属性。

<DockPanel Style="{StaticResource ColoringStyle}">
     ...
</DockPanel>

【讨论】:

    猜你喜欢
    • 2018-12-17
    • 2018-10-19
    • 2011-08-08
    • 1970-01-01
    • 1970-01-01
    • 2017-02-03
    • 2010-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多