2012-11-26 78 views
0

我想將一些代碼從c#轉換爲vb.net。整個代碼在http://www.codeproject.com/Articles/474418/DataGridViewplus-e2-80-93plusStackedplusHeader。我幾乎擁有它,但我遇到了構造函數的問題。在C#中它傳入一個接口。像以下內容如何將接口傳遞給vb.net中的構造函數

public StackedHeaderDecorator(IStackedHeaderGenerator objStackedHeaderGenerator, DataGridView objDataGrid) 
     : this(objDataGrid) 
    { 
     this.objStackedHeaderGenerator = objStackedHeaderGenerator; 
    } 

我不知道如何將其轉換爲vb.net。我真的很感激,如果有人能告訴我如何編寫代碼來傳遞一個整數面給構造函數。

+3

那你試試?你有什麼麻煩? – SLaks

+0

引用您對@ DStanley的回答的評論,請顯示您的VB.Net類的類聲明? – jeroenh

回答

4

你傳遞一個接口引用,就像你通過任何類型:

Sub New(objStackedHeaderGenerator As IStackedHeaderGenerator, objDataGrid As DataGridView) 

    Me.New(objDataGrid) 

    Me.objStackedHeaderGenerator = objStackedHeaderGenerator 

End Sub 
+0

感謝您的幫助,但是當我嘗試並獲得以下錯誤消息:'objStackedHeaderGenerator'不能通過類'StackedHeaderDecorator' –

+2

@GregoryWilliams在項目之外公開類型'IStackedHeadeGenerator',這是您應該添加到您的問題的重要信息! – jeroenh

+0

我的猜測是這個構造函數所屬的類標記爲Public,而IStackedHeaderGenerator標記爲Friend/Private/Protected。這意味着IStackedHeaderGenerator也是公共的,它不是編譯器所抱怨的。 – Ceres

相關問題