none
如何取得變數自已的名稱?? RRS feed

  • 問題

  • 請問一下…如何取得變數自身的名稱?

    比如:

    string strAB;

    有方法取得"strAB"嗎?不是strAB的內容喔

    • 已移動 a-talinModerator 2011年1月24日 上午 01:56 不是ASP.NET開發討論 (從:ASP.NET 與 AJAX(ASP.NET and AJAX))
    2011年1月21日 上午 08:19

解答

  • 不太曉得你問題的本質是什麼, 如果你是要取得某個類別的公用欄位 (也就是以Public 宣告的變數) 用Reflection是可以的

    類似像這樣

    Public Class Form1

        Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
            Dim myFieldInfo() As FieldInfo
            Dim myType As Type = GetType(test)
            myFieldInfo = myType.GetFields()
            For i = 0 To myFieldInfo.Length - 1
                MessageBox.Show(myFieldInfo(i).Name)
            Next


        End Sub
        Public Class test
            Private x As String
            Public y As Int32
        End Class
    End Class

     

    補充: 如果連Private都要, 那就要傳參數

    ex:

     myFieldInfo = myType.GetFields(BindingFlags.NonPublic Or BindingFlags.Instance Or BindingFlags.Public)


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已提議為解答 阿尼 2011年1月21日 上午 09:06
    • 已標示為解答 a-talinModerator 2011年1月24日 上午 01:56
    2011年1月21日 上午 08:43
    版主