繁体   English   中英

c#winforms-子窗体上无法访问的控件

[英]c# winforms - inaccessible control on a child Form

关于twoForms的永恒问题:

frm02 frm02 = new frm02();
frm02.Text = "Objects";
ds02 = new DataSet();
ds02.ReadXml(path02);
frm02.dgv02.DataSource = ds02.Tables[0];  //error: dgv02 is inaccessible...
frm02.ShowDialog();

请帮忙!

您需要将dgv02 公开 默认情况下,当您通过设计器添加类型时,它们不是公共的。 您可以在设计窗口中编辑其属性,并将可访问性级别更改为public。

话虽这么说,更好的选择可能是创建一个返回适当控件的公共属性,或者甚至更好地允许您设置数据。 例如,如果您将此方法添加到窗体中:

public void SetDatasource(DataSet data)
{
     this.dgv02.DataSource = data;
}

然后可以将其称为:

frm02.SetDatasource(ds02);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM