【问题标题】:WinForms table control that can contain other UI controls?WinForms表格控件可以包含其他UI控件吗?
【发布时间】:2013-01-25 21:24:11
【问题描述】:

我目前正在用 C# 开发一个 WinForms 应用程序,并且需要一个可以包含其他 UI 控件的表格控件。

在以下示例中,我希望 Links 列包含链接标签控件:

| ID | Name |        Links        |
-----------------------------------
| 1  |  n1  | link1, link2, link3 |
| 2  |  n2  | link1               |

有没有我可以“开箱即用”使用的,有没有好的第三方?

谢谢。

【问题讨论】:

  • 另外,但这是为了当您有更多时间时,请查看 WPF。 WPF 让您可以更好地控制如何呈现项目。

标签: c# vb.net winforms


【解决方案1】:

目前还没有支持开箱即用绑定的控件,但是使用TableLayoutPanel可以达到类似的效果,这是一个容器控件。

它具有行和列的基本概念(以及行跨度和列跨度),但是它没有从“网格”控件获得的行标题、列排序等概念 - 它是只是一个布局驱动程序。

DataGridView 可以包含包含自定义控件的列,但要使其工作涉及很多问题 - 因此不符合“开箱即用”的条件。

This is an example of putting a DateTimePicker into a DataGridView column.

与 WinForms 不同,WPF 具有在其他控件中组合控件的能力。事实上,这是一流的概念。使用结构 XAML 文件来描述 UI 自然适合这种组合模型。

这些天我总是争论选择 WPF 而不是 WinForms - 除非学习曲线太长并且大部分经验都是使用 WinForms。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-15
    • 2011-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多