tamaboyoです。コピー、貼り付け等の編集を行うクラスCEditを用意し、これをMDI親フォームで宣言しました。実際編集するデータがあるのは子フォームのGridコントロールです。親フォームから[コピー]等の編集機能が呼ばれた際にCEditクラスに子フォームの情報を渡して編集を行いたいのです。this.ActiveMdiChild;で取得できましたので、このcFormを親フォームで宣言したCEditクラスに渡しました。CEditクラス内で、子フォーム上のGridコントロールにアクセスができません。Gridのデータを取得する部分のコードで、コントロール未定義のエラーになります。Form型を渡すだけでは子フォームを扱うことはできないのでしょうか?それとも、Form型を渡してはいけないのでしょうか?環境はVS2005です。取得できましたので、このcFormを親フォームで宣言したCEditクラスに渡しました。CEditクラス内で、子フォーム上のGridコントロールにアクセスができません。Gridのデータを取得する部分のコードで、コントロール未定義のエラーになります。ありがとうございます。this.ActiveMdiChild;>>で取得できましたので、このcFormを親フォームで宣言したCEditクラスに渡しました。>>が、CEditクラス内で、子フォーム上のGridコントロールにアクセスができません。>>Gridのデータを取得する部分のコードで、コントロール未定義のエラーになります。呼び出したいメソッド/プロパティはちゃんとpublicになってますか?Gridコントロールの宣言はpublicにしています。子フォームclassのFormChildもpublicです。気になることがあるのですが。子フォームはForm型をベースにして作成しているのですが、もともとのForm型にはコントロールはありません。はじめは、子フォーム型で渡せばいいと思ったのですが、それだとCEditクラスの中の関数の引数の型としての宣言ができませんでした。受け取り側の引数が子フォーム型になっていないと受け取れないのでは?と思ったのは間違いなのでしょうか?とても初歩的な疑問で申し訳ありません。子フォームはForm型をベースにして作成しているのですが、もともとのForm型にはコントロールはありません。それだとCEditクラスの中の関数の引数の型としての宣言ができませんでした。さん、ありがとうございます。返信>>子フォームはForm型をベースにして作成しているのですが、もともとのForm型にはコントロールはありません。>>はじめは、子フォーム型で渡せばいいと思ったのですが、>>それだとCEditクラスの中の関数の引数の型としての宣言ができませんでした。これはFormChildクラスにコピー等の編集機能を持たせるということでしょうか?そんな話はしてません。「ならば適切にcastしてはいかが?」と提案しています。さん、ありがとうございます。そんな話はしてません。