1
我有以下代碼模式:如何調用通過interop傳遞的對象的函數?
[VB6]
Dim objNetDllObject As New NetDllObject
objNetDllObject.PassVb6Form(MyForm)
objNetDllObject.ShowForm
[C#]
object Vb6Form;
private void PassVb6Form(object form) { Vb6Form = form; }
private void button1_Click(object sender, EventArgs e) { Vb6Form.Show(); }
的問題是,C#編譯器不喜歡Vb6Form.Show()
語句,因爲Show()
不是object
的功能,這是真的。我怎樣才能編譯這段代碼?
類型轉換?問題是VB討厭綁定,因爲這種類型是在運行時確定的,如果函數不存在,那麼程序崩潰。如果你問我很愚蠢 –
你可以使用動態代替對象嗎? '動態Vb6Form' –
@ColeJohnson:我認爲我不會遇到運行時不存在的函數問題。我的問題是它甚至不會編譯。 –