我正在使用带有DataGridView控件的winforms应用程序,但遇到了一些令人沮丧的事情。

首先,我要关闭AutoColumnGeneration,但该属性未列出。没问题,我可以用一行代码来做到这一点……这就是奇怪的地方:


在我的代码中,无法访问DataGridView。就像它不存在于表单上一样。对此进行研究,是因为设计器将其声明为InitializeComponent()方法的一部分,而不是将其初始化为所有其他控件的地方。
因为它在设计器中,所以我在那里所做的任何更改都会被撤消,因此我无法修复。


有什么方法可以阻止Visual Studio这样做吗?我通过使用datagrid列之一(可访问)来创建对与其相关联的datagridview的引用并以这种方式访问​​它的引用,从而发现了一个黑客。它可以工作,但是丑陋且不直观。

最佳答案

我想我找到了:

在设计器中,单击DataGridView控件,然后将GenerateMember的属性更改为true。我猜它设置为false。

该属性仅用于执行此操作:在代码窗口中隐藏控件。对于您不需要在代码中处理的Labels或ToolStripSeparators非常有用。

关于c# - 带有数据网格和设计器的奇怪VS2010行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16546805/

10-11 16:49