1

私は非常に奇妙な問題を抱えており、どうしてそれが起こっているのか、それを防ぐ方法がわかりません。 Envionment: の.NET Framework 3.5 のWinFormアプリケーション C# VS2008 ProのDataControlを含むWinControlでDataGridViewが発生すると、デザイナーの問題が発生する

問題: 私はそののTabPageの2のカスタムユーザーコントロールを持っているのTabControlを含むのWinFormを持っています。 作成したusercontrolには、3つのDataGridViewコントロールが含まれています。

私はWinFormのDesigerにアクセスするたびに、DataGridViewコントロールのSIX(3 * 2)インスタンスが作成されていることがわかります。 これらはすべて、dataGridView13、dataGridView14などのように番号が付けられています。 これらのDataGridViewインスタンスのそれぞれに沿って、関連するDataGridViewTextBoxColumnインスタンスとDataGridViewCellStyleインスタンスも作成されます。
すぐにMyWinForm.Designer.csファイルに600個近くのDataGridViewインスタンスがありました!!

なぜこれが起こっているのでしょうか、より重要なのはそれを防止する方法ですか? 誰もこれの前に何かを見たことがありますか?

+0

あなたはusercontrolのコードを投稿する必要があるかもしれないと思います。 – YWE

答えて

0

Visual Studioのデザイナーは、特にDataGridViewコントロールで継承されたコントロールの処理に問題があります。列のような子コントロールのコンテナでもある場合は、変更を保存するたびに新しい子セットが生成されます。

私が問題を解決するために見つけた唯一の方法は、変更を加えて保存し、以前の重複したコントロールのリストを削除することです。設計者は、少なくともコントロールの種類によって順次番号を付けることができます。

ああ、コントロールの名前を変更するという不満を解消してください。デザイナーが新しいセットを生成すると、デフォルトの命名方法に戻ります。

申し訳ありませんご迷惑をおかけして申し訳ございません。

関連する問題