none
請問要如何自定類似TreeNode 的類別呢? RRS feed

  • 問題

  • 請問在VB2005要如何自定類似TreeNode 的類別呢?
    小第須定義如下的類別..
    Public Class ClassSongMenuItemType
        Public Text As String = ""
        Public Column As Integer = -1
        Public Condition As String = ""
    End Class
    這是一個項目的基本類,,
    不知要如何做,,才能做到像TreeNode 這樣 一層一層的加下去,如..
    -A
    ---A1
    ------A11
    ---A2
    ------A21
    ------A22
    -B
    ---B1
    ------B11
    ------B12
    ---B2
    ---B3
    ------B31
    項目與層次數是不固定的,,也就是說,可以由程式中如 TreeNode 般,,自行一層一層定義。
    而不管A項目或A1項目或B項目,,都有ClassSongMenuItemType中的 Text等欄位 可輸入資料。

    小弟想了好久,,實在想不出這個類別要怎麼定義,,還忘各位前輩不吝指教..謝謝..
    2007年4月4日 下午 03:37

解答

  • 以 .NET 2.0 來說,用這個方法就可以了:

     

    Code Snippet

    Public Class ClassSongMenuItemType

     

    Public Text As String = ""

    Public Column As Integer = -1

    Public Condition AS String = ""

    Public SubItems As New List(Of ClassSongMenuItemType)

    End Class

     

    C# 的語法是這樣:

     

    Code Snippet

    public class ClassSongMenuItemType

    {

    public string Text = null;

    public int Column = -1;

    public string Condition = null;

    List<ClassSongMenuItemType> SubItems = new List<ClassSongMenuItemType>();

    }

     

     

    2007年4月5日 上午 12:15
    版主
  •  小朱 寫信:

    以 .NET 2.0 來說,用這個方法就可以了:

     

    Code Snippet

    Public Class ClassSongMenuItemType

     

    Public Text As String = ""

    Public Column As Integer = -1

    Public Condition AS String = ""

    Public SubItems As New List(Of ClassSongMenuItemType)

    End Class

     

    C# 的語法是這樣:

     

    Code Snippet

    public class ClassSongMenuItemType

    {

    public string Text = null;

    public int Column = -1;

    public string Condition = null;

    List<ClassSongMenuItemType> SubItems = new List<ClassSongMenuItemType>();

    }

     

     

     

    謝謝小朱大大囉...我去試試先..^^

    2007年4月7日 上午 11:47

所有回覆

  • 以 .NET 2.0 來說,用這個方法就可以了:

     

    Code Snippet

    Public Class ClassSongMenuItemType

     

    Public Text As String = ""

    Public Column As Integer = -1

    Public Condition AS String = ""

    Public SubItems As New List(Of ClassSongMenuItemType)

    End Class

     

    C# 的語法是這樣:

     

    Code Snippet

    public class ClassSongMenuItemType

    {

    public string Text = null;

    public int Column = -1;

    public string Condition = null;

    List<ClassSongMenuItemType> SubItems = new List<ClassSongMenuItemType>();

    }

     

     

    2007年4月5日 上午 12:15
    版主
  •  小朱 寫信:

    以 .NET 2.0 來說,用這個方法就可以了:

     

    Code Snippet

    Public Class ClassSongMenuItemType

     

    Public Text As String = ""

    Public Column As Integer = -1

    Public Condition AS String = ""

    Public SubItems As New List(Of ClassSongMenuItemType)

    End Class

     

    C# 的語法是這樣:

     

    Code Snippet

    public class ClassSongMenuItemType

    {

    public string Text = null;

    public int Column = -1;

    public string Condition = null;

    List<ClassSongMenuItemType> SubItems = new List<ClassSongMenuItemType>();

    }

     

     

     

    謝謝小朱大大囉...我去試試先..^^

    2007年4月7日 上午 11:47
  •  小朱 寫信:

    以 .NET 2.0 來說,用這個方法就可以了:

     

    Code Snippet

    Public Class ClassSongMenuItemType

     

    Public Text As String = ""

    Public Column As Integer = -1

    Public Condition AS String = ""

    Public SubItems As New List(Of ClassSongMenuItemType)

    End Class

     



    請問先進~
    我有個類似的問題,在 Class 裡要如何去作階層架構呢?
    爬了許多文,還是搞不ˇ清楚!

    需求如下:

    轉換 > 16Base > 2 to 16Base(Function)
                          >8 to 16Base(Function)
                          >10 to 16Base(Function)
    轉換 > 10Base > 2 to 10Base(Function)
                          >8 to 10Base(Function)
                          >16 to 10Base(Function)
    轉換 > 8Base
    ...
    2008年9月5日 上午 08:28
  • 標準做法是在專案總管內 加入 新增項目 自訂控制項

     

    再針對所要修改的方法做覆寫。

     

    至於相關範例可搜尋 DirectoryTreeView ,這是一個微軟提供的範例,像 VB6 那樣的目錄樹,我記得先前站上貼過這個範例的連結,不過沒找到。

     

    我是把這個範例的這個自訂控制項抽出來,平常要用就拿來用了~

    2008年9月5日 上午 11:53