【问题标题】:Is it possible to derive a DataGridView Column such that it can store an object of any sort?是否可以派生一个 DataGridView Column 以便它可以存储任何类型的对象?
【发布时间】:2014-08-30 18:11:49
【问题描述】:

我有一个从文件加载信息并存储该信息的 DataGridView。信息以类形式保存以供使用,因此我在考虑不必从存储在 DGV 中的数据重建该类对象,将类对象保存到列中并从该列访问该对象会更容易必要时。那可能吗?会不会和DataBinding有关?

所以最终我想要的是:

DataGridView DGV = new DataGridView;
//Initialization Stuff

DGV.Rows[0].Columns["objectColumn"].value = <ANY OBJECT OR CLASS TYPE AT ALL HERE>

当然该列会被隐藏。

【问题讨论】:

    标签: winforms c#-4.0 datagridview datagridviewcolumn


    【解决方案1】:

    DataGridViewCell.ValueObject 类型,这意味着您可以在其中存储任何对象。如果您的类覆盖了ToString 方法并提供了有意义的实现,它将显示在相应的单元格中。

    如果您不覆盖ToString,您仍然可以使用DataGridView.CellFormatting 事件来格式化您的对象。

    【讨论】:

    • 所以我可以,比如说,获取一个 DataGridView TextBox 列,隐藏它,将它的值设置为我想要的任何值,然后只要我将它转换为正确的类型?
    • 是的,完全正确。试试看。
    • 这就是我需要确定的,非常感谢您的帮助。
    • 如果这有助于考虑将其标记为答案,如果您需要更多帮助,请在下方留言。
    • 我本来打算 :P 只需要等待足够的时间过去并有人提醒我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 1970-01-01
    • 2022-01-05
    • 2019-08-09
    相关资源
    最近更新 更多