2010-10-08 66 views
0

我有一個網格的窗口正在從MySQL中進行選擇,並使用.Show()功能插入ShowDialog()
我可以再次打開相同的窗口,以獲得同一個窗口的兩個實例。如何在第一次刷新網格時再次打開frmWindow?

現在,當我打開第二個實例時,網格也會在第一個窗口中填充新的選擇。我怎麼能讓窗口第二次打開而又不在第一次重新打開網格?

+0

也許在你的代碼中有一個錯誤。你能提供一個代碼樣本來重現這個效果嗎? – Hath 2010-10-08 08:16:11

+0

很難說沒有代碼示例。但是:您確定您沒有將兩個網格綁定到相同的數據源嗎?如果數據源封裝了過濾,則兩個網格都會刷新並顯示相同的數據。 – 2010-10-08 08:19:55

+0

您是否直接從表單中刪除Form.Grid? – kyndigs 2010-10-08 08:22:15

回答

1

如果要創建相同形式的新實例的基礎上,從不同位置的變量「myForm會」,你實際上是將「刷新」兩種形式。

解決此問題的一種方法是在單獨的函數中創建frmMain的第二個變量實例。 (即在... VB也不好,所以原諒我的VB編程技巧。)

在一個功能:

Dim myForm AS New formMain() 
myForm.Show(); 

在第二個功能

Dim frmTwo AS New frmMain() 
frmTwo.Show(); 

然後你只需做你打電話給frmTwo,這是打開的第二個表格。

我希望這會有所幫助。

0

Form.Show是一個簡單的函數,它只是告訴一個表單取消隱藏,它可能使用相同的實例,因此它刷新了兩者。

試試這個:

Dim myForm As New frmMain() // Change frmMain to your forms name 
    myForm.Show() 
相關問題