如题,想实现在DATAGRIDVIEW控件中单击某个单元格(以组合框形式显示),然后下拉列表中就显示TREEVIEW控件中的内容,请问这样的捆绑该如何实现?谢谢!

解决方案 »

  1.   

    不知道你的树的level是多少
    如果只有1的话,就好办了
     
    ArrayList myList = new ArrayList();// 保存选中的树节点下的内容
    foreach(TreeNode node in tvItems.SelectedNode.Nodes)
    {
      myList.Add(new DictionaryEntry(node.Name,name.Text));
    }// 设置下拉框的数据源
    foreach(DataGridViewRow dr in dgvDetails.Rows)
    {
      DataGridViewComboBoxCell combo = dr.Cells["Combo1"] as DataGridViewComboBoxCell ;
      
      if(combo != null)
       {
        combo.DataSource = myList;
        combo.DisplayMember = "Value";
        combo.ValueMember = "Key";
       }
    }如果要直接从DataGridViewComboBoxCell中下拉一棵树,貌似也是可以做到的,不过很烦,CodeProject上有相应的例子的
      

  2.   

    树的级数可随意,并不局限1,如果是1的话根本就不用绑定树了,可以用COMBOBOXCOLUMN就可以实现了。高手们请帮忙哈