| 魔界の仮面弁士さん、よねKEN さん、ありがとうございます。
投稿してから、いらない部分を消し、コードを整理したところ、イベントが取れるようになりました。 特に追加したり、削除したコードはないのですが、引数を統一&まとめたたことで上手くまくいくようになりました。 いろいろ試してる途中で、値が混在してしまっていたようです。 また、ソースの貼り付けもあちこち異なっていたようで申し訳ありません。 お手数をおかけしましたが、解決できたようです。 ありがとうございました。
ただ、次の問題が発生しました。 重ねての質問になりますが、よろしくお願いします。 パネルコントロールにラベルを配置した場合、このフォームを元にして作成した新しいフォームでのラベルのクリックイベントは取れなくなりました。 元になるクリックイベントは protected virtual void LB_Click(object sender, EventArgs e) 新しいフォームのラベルのクリックイベントは protected override void LB_Click(object sender, EventArgs e) としています。 ラベルをパネルに追加しない場合は、ラベルをクリックすると、新しいフォームのLB_Clickイベントに飛んできていました。 この場合、新しいフォーム側で、ラベルのクリックイベントについて、改めて設定してあげないといけないのかと思い、新しいフォームのContorol_Load関数で追加してみたのですが、イベントは飛んできませんでした。 また、Designer.cs上でpanelの宣言がinternalだから?と思いprotectedに変更してみたのですが、変わりませんでした。 #Designer.csって、簡単に触って良いものなのか不安ですが・・・
基本フォームと新しいフォームの違いは、関数の中身が異なるものがいくつかありますが、 使用コントロールは全く同じものです。 中身が異なる関数は、virtual、override宣言しています。
宜しくお願いします。 |