【问题标题】:Making use of DataGrid SelectedItem property to control look of TemplateColumn利用 DataGrid SelectedItem 属性控制 TemplateColumn 的外观
【发布时间】:2023-03-08 16:45:01
【问题描述】:

在为 Silverlight DataGrid 创建自定义列设计时,是否可以绑定或使用 DataGrid 的 SelectedItem 属性?

我希望显示一个静态元素,但它只对选定的行可见。

我所追求的一个简单的例子:

<data:DataGrid>
        <data:DataGrid.Columns>

            ...

            <data:DataGridTemplateColumn>
                <data:DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <TextBlock Text="Selected" Visibility="{IsSelected ? Visible : Collapsed}">
                    </DataTemplate>
                </data:DataGridTemplateColumn.CellTemplate>
            </data:DataGridTemplateColumn>

            ...

        </data:DataGrid.Columns>
</data:DataGrid>
  • 该列不需要包含任何其他元素或绑定。
  • 它不需要专门控制 Visibility 属性 - 任何隐藏所选行以外的所有行上的元素的方法都可以。

这可以通过样式来完成吗? (请注意,已经有一种样式应用于 DataGrid)。

【问题讨论】:

    标签: silverlight silverlight-3.0 datagrid templates


    【解决方案1】:

    RowDetails 是否满足您的需求?

    【讨论】:

      【解决方案2】:

      最后我做了一个变通方法——用作 ItemSource 的类添加了一个 Selected 属性,该属性会自动更新以与列表的更改同步。然后我添加了一个 Visiblity 属性(我也可以使用转换器)将选定的布尔值转换为可见性值,该值用于控制列表中所选项目的列中控件的视觉外观。

      【讨论】:

        猜你喜欢
        • 2011-08-14
        • 2023-03-16
        • 2014-05-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-03
        相关资源
        最近更新 更多