none
Trigger如何判断ContentPresenter中内容为空 RRS feed

  • 问题

  • 自定义一个按钮:

    <Grid HorizontalAlignment="Center" VerticalAlignment="Center">
        <Image x:Name="image" Grid.Row="0" Grid.Column="0" Focusable="False"
                    Margin="{Binding BorderThickness, ElementName=BD_PART}"
                    Source="{Binding NormalImage, RelativeSource={RelativeSource TemplatedParent}}"
                    HorizontalAlignment="Center" VerticalAlignment="Center"/>
        <ContentPresenter x:Name="contentPresenter" Grid.Column="1" Focusable="False"
                            Margin="{TemplateBinding Padding}" 
                            RecognizesAccessKey="True"
                            SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
                            HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" 
                            VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
    </Grid>

    Trigger:如果Content=""未设置过值,则设置背景为红色

    <DataTrigger Binding="{Binding Path=Content, RelativeSource={RelativeSource Mode=Self}}" Value="">
        <Setter TargetName="contentPresenter" Property="Background" Value="Red"/>
    </DataTrigger>

    不起作用!



    2017年8月9日 7:53

答案

全部回复

  • ContentPresenter的Content是引用类型不是字符串,所以不可能为"",只能是"{x:Null}"。
    • 已标记为答案 oneonce 2017年8月9日 8:48
    2017年8月9日 8:09
  • ContentPresenter的Content是引用类型不是字符串,所以不可能为"",只能是"{x:Null}"。

    如何判断非{x:Null}呢?

    2017年8月9日 8:28