【问题标题】:Image inside a GridControl -DevexpressGridControl -Devexpress 中的图像
【发布时间】:2015-11-02 14:11:21
【问题描述】:

我有一个网格控件,其中第一列和单元格显示一个垃圾桶图标。但是垃圾桶图标应该只有在其所在的行被选中时才可见。

我有一种风格:

<Style TargetType="{x:Type Image}" x:Key="ImageStatusStyle">
    <Style.Triggers>
        <DataTrigger Binding="{Binding Path=RowData.IsFocused,   UpdateSourceTrigger=PropertyChanged}" Value="true">
            <Setter Property="Visibility" Value="Visible" />
        </DataTrigger>                
    </Style.Triggers>
</Style>

和一个数据模板:

<DataTemplate x:Key="TrashIconCellTemplate" >
    <Button Height="15" Width="15"  Command="{Binding ElementName=GroupCodeListView,Path=DataContext.MarkRowForDeletionCommand}">
        <Button.Template>
            <ControlTemplate>
                <Image Source="../Resources/crane.png" Style="{StaticResource ImageStatusStyle}" Visibility="Hidden"/>
            </ControlTemplate>
        </Button.Template>
    </Button>
</DataTemplate>

一个网格控件:

<dxg:GridControl ItemsSource="{Binding GroupCodes, Mode=TwoWay}" 
                 SelectedItems="{Binding                    
                 SelectedGroupCodes,Mode=TwoWay}"
                 SelectionMode="Row"
                 x:Name="Grid"
                 ClipboardCopyMode="ExcludeHeader" 
                 Margin="0,0,0,0"
                 Height="360"
                 MinWidth="400"
                 CustomRowFilter="FilterDeleted">

以及引用上述内容的网格单元列:

<dxg:GridColumn FieldName="IconUnbound"
                UnboundType="Object"
                CellTemplate="{StaticResource TrashIconCellTemplate}"
                CellStyle="{StaticResource GroupCodeColorStyle}" />

第一个单元格中的垃圾图像应仅在选中该行时出现。

图像保持默认隐藏状态。数据触发器不起作用。我在这里做错了什么?

【问题讨论】:

    标签: wpf devexpress


    【解决方案1】:

    如果要检查是否选择了行,则需要使用RowData.IsSelected 属性。此外,您必须在Style 部分中设置Visibility,而不是在Image 本身中。

    示例如下:

    0。风格:

    <Style TargetType="{x:Type Image}" x:Key="ImageStatusStyle">
        <Setter Property="Visibility" Value="Hidden" />
        <Style.Triggers>
            <DataTrigger Binding="{Binding Path=RowData.IsSelected, UpdateSourceTrigger=PropertyChanged}" Value="true">
                <Setter Property="Visibility" Value="Visible" />
            </DataTrigger>
        </Style.Triggers>
    </Style>
    

    1.图片:

    <Image Source="../Resources/crane.png" Style="{StaticResource ImageStatusStyle}" />
    

    【讨论】:

      猜你喜欢
      • 2012-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多