1

我有一個很奇怪的問題,我不知道它爲什麼發生或如何防止它。 Envionment: .NET Framework 3.5的 WinForm應用程序 C# VS2008臨WinForm與UserControl包含DataGridView導致設計器問題

問題: 我有一個包含其中有兩個其TabPage的自定義用戶控件一個TabControl一個WinForm。 我創建的usercontrol包含3個DataGridView控件。

每當我進入我的WinForm的Desiger時,我發現創建了一個DataGridView控件的SIX(3 * 2)實例。 它們都是編號的,例如dataGridView13,dataGridView14等...... 沿着每個DataGridView實例,還會創建關聯的DataGridViewTextBoxColumn和DataGridViewCellStyle實例。
很快我在MyWinForm.Designer.cs文件中有近600個DataGridView實例!

爲什麼會發生這種情況,更重要的是如何防止它? 任何人都見過這樣的事情之前?

+0

我想你可能需要發佈usercontrol的代碼。 – YWE 2010-11-19 22:23:42

回答

0

Visual Studio中的設計器在處理繼承控件方面存在問題,特別是在DataGridView控件中。如果它也是子控件的容器(如列),則每次保存修改時都會生成一組新的子項。

我發現解決問題的唯一方法是進行修改,保存它們,然後刪除以前的重複控件列表。設計師至少有禮貌地按照控制類型對它們進行編號。

呵呵,並且省去重命名任何控件的麻煩。當設計者生成新的集合時,它將恢復到默認的命名實踐。

對不起,我沒有更好的消息給你。