XAML基于触发器添加文本

时间:2017-03-16 13:12:42

标签: xaml

<dxg:GridControl Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" ItemsSource="{Binding Notes}" AutoGenerateColumns="None" ColumnGeneratorTemplateSelector="{StaticResource ColumnTemplateSelector}" dependencyProperties:BestFitColumn.IsEnabled="True" SelectedItem="{Binding SelectedRow}">
            <dxg:GridControl.Columns>
                <dxg:GridColumn FieldName="Priority" Header="{x:Static meta:MetaCommon.Importance}">
                    <dxg:GridColumn.CellTemplate>
                        <DataTemplate>
                            <Image>
                                <Image.Style>
                                    <Style BasedOn="{StaticResource SmallIcon}" TargetType="Image">
                                        <Style.Triggers>
                                            <DataTrigger Binding="{Binding RowData.Row.Priority}" Value="H">
                                                <Setter Property="Source" Value="{x:Static helper:IconHelper.HighImportance}" />
                                                <Setter Property="ToolTip" Value="{x:Static meta:MetaCommon.High}" />
                                            </DataTrigger>
                                    </Style.Triggers>
                                </Style>
                            </Image.Style>
                        </Image>
                    </DataTemplate>

我想知道在RowData.Row.Priority = H的情况下是否可以添加文本。我似乎无法找到任何方式,并且想知道我是否只是错过了某些东西,或者是否必须创造一个解决方案并在此陈述之外做一些事情。

1 个答案:

答案 0 :(得分:2)

您可以在DataTemplate.Triggers下移动DataTrigger。

是否使用您想要的文本设置新TextBlock的可见性。

<DataTemplate>
<Grid>
<Image/>
<TextBlock Visibility="Collapsed"/>
</Grid>
<DataTemplate.Triggers>
</DataTemplate.Triggers>
</DataTemplate>