そのため、親フォームから子フォームのパブリックメンバー変数にアクセスしようとしています。フォームには、変数にアクセスしようとしているpublicgetプロパティがあります。変数が私の子フォームでどのように定義されているかを次に示します。
public partial class frmNewProduct : Form
{
public Inventory _inventory { get; private set; }
それでは、ペースを切り替えて、親フォームに移動しましょう。子フォームのインスタンスを以下に作成します。そのインスタンスから_iventoryのgetプロパティにアクセスしようとしているのもわかりますが、毎回コンパイラエラーが発生します。
private void btnAdd_Click(object sender, EventArgs e)
{
Form newProduct = new frmNewProduct(_inventory, Mode.add);
newProduct.Show();
Inventory variable = newProduct._inventory;
}
コンパイラエラーは次のようになります。
エラー1「System.Windows.Forms.Form」に「_inventory」の定義が含まれておらず、「System.Windows.Forms.Form」タイプの最初の引数を受け入れる拡張メソッド「_inventory」が見つかりませんでした(ディレクティブまたはアセンブリ参照を使用しますか?)
ここで何が悪いのか誰か知っていますか?ありがとうございました。