开发者

How to write conditional statements in WPF? [duplicate]

开发者 https://www.devze.com 2022-12-14 06:14 出处:网络
This question already has answers here: Closed 11 years ago. Possible Duplicate: XAML Conditional Compilation
This question already has answers here: Closed 11 years ago.

Possible Duplicate:

XAML Conditional Compilation

I am new to WPF. I just need to write a small piece of code in xaml, for which i need to know the if condition equivalent in WPF. Can anybody h开发者_如何转开发ere help in that?


Are you after something like, "If (x == 1), make the background of this control blue"? If that is what you are after, you could use data triggers. Here is an example that changes the background color of a control conditionally based on some data. In this example, I made it part of a style and used it later in some controls.

<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>

If 'Coloring' changes values to 'Red', 'Blue', or 'White', it will update the background property of the DockPanel accordingly.

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

精彩评论

暂无评论...
验证码 换一张
取 消