【问题标题】:Custom controls on DataGrid Header (not ColumnHeader)DataGrid Header(不是 ColumnHeader)上的自定义控件
【发布时间】:2011-06-01 09:11:49
【问题描述】:

我想扩展 DataGrid 以在 DataGrid 控件的最顶部添加一些控件(而不是在列标题中)。换句话说,我想在CustomDataGrid(继承自DataGrid)的上半部分渲染一些控件(添加/删除按钮,过滤TextBox),然后在下半部分渲染DataGrid。

在我的页面中,我想使用这个 CustomDataGrid 并设置它的列和其他选项,我通常为默认 DataGrid 设置这些选项。

我该如何实现?

【问题讨论】:

    标签: silverlight silverlight-toolkit


    【解决方案1】:

    你有几个选择:

    1. 创建一个UserControl,其中包括一个DataGrid 以及位于DataGrid 上方的其他控件,可能使用具有两行布局的网格。
    2. 将您的其他控件直接添加到DataGrid 模板。

    我会选择选项 (1),虽然您没有扩展 Datagrid,但这样做要简单得多。

    【讨论】:

    • 选项1不合适,因为我想扩展DataGrid。第二个选项很有趣,但是怎么做呢?我想有很多 xaml 可以复制默认的 DataGrid 功能......
    • 为什么需要扩展DataGrid?您的 UserControl 可以公开它包含的 DataGrid,从而为您提供相同的结果。无论如何,是的,DataGrid 和所有 Silverlight 控件一样都有一个可以修改的 ControlTemplate。
    • 如果我使用第一个选项并创建 UserControl,如何在任何页面 xaml 中为网格定义列,这些列嵌套在 UserControl 中(不重置网格)?
    • 好的,我将使用 UserControl 作为默认 DataGrid 的包装器。你说得对。
    猜你喜欢
    • 2012-07-20
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 2015-09-29
    • 1970-01-01
    相关资源
    最近更新 更多