gpt4 book ai didi

.net - 如何安全访问 DataGridView 列名?

转载 作者:行者123 更新时间:2023-12-01 00:06:05 28 4
gpt4 key购买 nike

操作 DataGridView 单元格时,您通常会执行以下操作:

MyGrid.CurrentRow.Cells["EmployeeFirstName"].Value = "John";

这一切都很好,但随着复杂性的增加,您开始担心拼写错误、重构问题等。

从历史上看,我只是将列公开,因此我可以直接在类实例中访问它们,但是我不得不与想要保持它们私有(private)的 Windows 窗体设计器作斗争(据说是因为这是一种很好的做法)。

我目前的解决方案是有一个名为 Cols 的类,带有一堆字符串:
public static class Cols
{
public static string EmployeeFirstName = "EmployeeFirstName";
...
}

结果是:
MyGrid.CurrentRow.Cells[Cols.EmployeeFirstName].Value = "John";

这给了我一些 IntelliSense 的好处,而不是等待运行时错误。不过,它似乎仍然模糊不清。

有没有更方便的方法来做到这一点?

最佳答案

如果您在设计时创建了列,则可以为它们指定合理的名称,例如employeeFirstNameColumn。

然后你可以使用类似的东西进入一个单元格:

MyGrid.CurrentRow.Columns[employeeFirstNameColumn.Name]

或许:
MyGrid.CurrentRow.Columns[employeeFirstNameColumn.Index]

如果您正在动态生成列(AutoGenerateColumns = true),您将拥有基于您要绑定(bind)的数据源的列索引的列索引。因此,您可以使用类似的技巧来派生索引(特别是如果您的数据源是强类型数据集)。

关于.net - 如何安全访问 DataGridView 列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1341927/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com