2016-11-12 46 views
-2

我想幾個數值從只讀property.in下面是我的代碼返還財產幾夭值

Public Class Class1 
      ReadOnly Property Ca As New Class2 
End Class 





Public Class Class2 

     ReadOnly Property getass(q As Integer, ww As String) As Integer 
      Get 
       Codes that return q And ww 

      End Get 

     End Property 
End Class 


Public Class Form1 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     Dim a As New Class1 
     Dim ret As Integer 
     Dim qq As Integer = Nothing 
     Dim qqq As String = Nothing 
     ret = a.Ca.getass(qq, qqq) 
    End Sub 
End Class 

我想最終得到的qq = q和QQQ = WW ... 感謝

+0

「我想」是不是一個問題,並沒有告訴我們如果您收到錯誤,錯誤是什麼以及錯誤在哪裏。請參閱[提問]小心,也採取了[旅遊] – Plutonix

+0

如何從像上面的代碼 – MDA

+0

只讀屬性幾款超值得到在我真正想要的RET = a.ca.getass(QQ,QQQ)得到的QQ和QQQ是QQ在Student的ID中,qqq是學生姓。如果qq和qqq到達數據庫並返回值ret = 0 else ret = 1。 – MDA

回答

1

你不想爲此使用一個屬性。

,而不是僅僅宣佈修改傳遞的參數像這樣子:

Public Class Class2 
    Sub getass(ByRef q As Integer, ByRef ww As String) 
     Dim _q as Integer 
     Dim _w as String 

     'do whatever you want 
     'then assign the final values and end sub 
     q = _q 
     ww = _ww 
    End Sub 
End Class 

然後使用子這樣的:

Public Class Form1 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     Dim a As New Class1 
     Dim qq As Integer = Nothing 
     Dim qqq As String = Nothing 
     a.Ca.getass(qq, qqq) 
     'At this point your local qq and qqq will have the value setted by the getass Sub 
    End Sub 
End Class 

請考慮,這不是一個很好的設計模式,你擁有學生證和姓名的最終意圖。

考慮創建一個類「學生」與所有你想要的屬性,並Class2中(我想是教室或類似的東西)返回一個「學生」的對象。

或者你可以使用一個KeyValuePair結構

編輯: 如果你仍然想通過一個接口來做到這一點試試這個:

Public Class Class2 
    Public ReadOnly Property getass(ByRef q As Integer, ByRef ww As String) as Integer 
     Get 
     Dim _q as Integer 
     Dim _w as String 

     'do whatever you want 
     'then assign the final values and end sub 
     q = _q 
     ww = _ww 

     return ID 'ID is what you want (Integer) 
     End Get 
    End Property 
End Class 
+0

非常感謝你...如果我想ret返回一個值,如0,表示代碼可以訪問數據庫和返回的值我該怎麼辦? – MDA

+0

對不起,我不明白你的英語 – theBugger

+0

是的,你是right.My英語虛弱的。希望RET(RET = a.Ca.getass(QQ,QQQ))在我上面的代碼返回0,如果運行成功。 – MDA