class A
{}class B : List<A>
{
    A currentA = null; // 标注1
}标注1:这个地方,我想加入一个指向表中当前节点的变量,但是又得维护访问时 curentA != null,不小心的话,程序直接挂了,繁琐的很!
不加吧,每次访问都得,查找,也不轻松通常各位会怎么弄,有没有好点的方法?

解决方案 »

  1.   

    没好法子,也是这样做,唉~~~~等高手吧为什么不用TreeView树呢?
      

  2.   

    那就没办法了维护起来不会太复杂吧!
    要不就给current一个默认值
      

  3.   

    public class Department
    {
      public string name { get; set; }
      public string code {get;set;}
      private List<Department> _childdepartment = new List<Department>();
      public List<Department> childDepartment
      {
      get
      {
      return _childdepartment ;
      }
      }
    }
    public class User
    {
      public string usrname { get; set; }
    }
    public static Department GetList()
      {
      var a = new Department { name = "a", code = "0" };
      var b = new Department { name = "b", code = "001" };
      var c = new Department { name = "c", code = "002" };
      a.ChildDepartment.Add(b);
      a.ChildDepartment.Add(c);
      return a;
      }treeview
    private void BindData(TreeNodeCollection treeNodeCollection, Department dept)
      {
      var node = new TreeNode { Text =dept.name, Value = dept.code };
      treeNodeCollection.Add(node);
      if (dept.ChildDepartment.Count > 0)
      dept.ChildDepartment.ForEach(p => { BindData(node.ChildNodes, p); });
      }