2011-04-23 28 views
1

這聽起來像是一個愚蠢的問題。.NET C#/ VB.NET如何從模塊訪問表單控件

我該如何做這樣的事情。

Module Misc 
    Public Sub WriteLog(ByVal txt As String) 
     Form1.TextBox3.Text += txt + vbNewLine 
    End Sub 
End Module 

這裏面從Form1類模塊獨立出來,因爲你可以看到馬上蝙蝠它不是一個類別,而且到Form1沒有提到..怎樣訪問Form1中沒有提到過讓工廠模塊工作喜歡這個。這是用於像線程函數和輔助函數這樣的目的。

回答

1

如果不引用該類的實例,則不能直接訪問該類。你最好的選擇可能是這樣的:

Module Module1 
    Private m_MyForm As Form1 
    Public ReadOnly Property MyForm() As Form1 
     Get 
      If IsNothing(m_MyForm) Then m_MyForm = New Form1 
      Return m_MyForm 
     End Get 
    End Property 
    Public Sub WriteLog(ByVal txt As String) 
     MyForm.TextBox3.Text += txt + vbNewLine 
    End Sub 
End Module 

現在隨時隨地在你的應用程序,您可以訪問使用Form1的Module1.MyForm。

注意:這限制了您只有一個Form1實例,它將一直存在,直到應用程序退出。

+0

這很好..但在我的情況更糟......嗯,我怎麼既使用Form1 ..和Module1:\ \ – SSpoke 2011-04-23 04:00:41

相關問題