1

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();

助けてください!

4

1 に答える 1

5

dgv02 公開する必要があります。デフォルトでは、デザイナーを介してタイプを追加すると、それらは公開されません。デザイン ウィンドウでプロパティを編集し、アクセシビリティ レベルを public に変更できます。

そうは言っても、適切なコントロールを返すパブリック プロパティを作成するか、データを設定できるようにすることをお勧めします。たとえば、このメソッドをフォームに追加すると:

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

これを次のように呼び出すことができます。

frm02.SetDatasource(ds02);
于 2012-06-09T21:22:45.173 に答える