3

私はC#.Netを使用しており、いくつかのフォームに継承される基本フォームがあります。

昨日まで、子(派生)フォームがデザイナで開かれると、ベースフォームコントロールが表示され、ロックされたものとして表示されていました。

しかし今、フォームは単に空白です。基本フォームコントロールはいずれもデザイナに表示されません。すべてがコンパイル、ビルド、実行されます。

他の誰かがこれを見たことがありますか?

派生フォームのOnLoadメソッドでベースフォームのInitializeComponentメソッドを呼び出してみましたが、役に立ちませんでした。

4

2 に答える 2

5

質問を投稿する前に見なかったSO投稿で解決策が見つかりました。

InitializeComponent()基本的に、ベースフォームのプライベートの引数なしコンストラクターを呼び出す必要がありました。

private ItemSelectForm()
{
    InitializeComponent();
}

次に、基本フォームを再構築する必要があります。

于 2010-06-02T10:10:26.680 に答える
0

私のコントロールが私のフォームから消えることは、私も経験した経験です。どこかで、おそらくMSDNで、InitializeComponent()を変更せずに、コードのその部分をコンパイルするために、変更せずにそのままマシンに残します。さて、私はInitializeComponent()メソッド内でデリゲートを正常にアタッチ、変更、および削除することがよくありますが、今回はパラメーターをそれにフィードしたいと思いました:InitializeComponent(string x)、無意識のうちにコントロールに別の名前を付けます実行時に操作可能でありながら、コントロールが見えなくなる効果について。このページを読んだ後、その小さなパラメーターxを削除し、InitializeComponent()メソッドの外部でジョブを実行しようとすると、コントロールがすぐに再表示されます。お役に立てれば、

于 2014-08-26T16:51:18.973 に答える