2011-05-13 77 views
1

我有一个.NET TreeView控件,在树叶上有复选框。我希望能够在选中复选框时获取节点的值。基本上,这是一个电子邮件联系人树,当用户选择一个复选框,我想拉节点值(电子邮件地址),并将其放置在一个文本框中。第二部分没有问题,我只需调用JS函数将电子邮件附加到文本框。扩展.NET TreeView复选框

所以,问题是如何从JS复选框中提取节点的值。除非有人有一个替代方法,我想扩展TreeView不包括一个正常的复选框,而是可以存储一个值。注意:我有一个名为CheckBoxValue的现有控件,它将完成此操作。从根本上说,我的问题是如何扩展TreeView来包含它?我相信这将在CreateChildControls方法,但会喜欢一些帮助。

任何想法?

感谢, 瑞安

回答

0

如果你想存储的值是一个字符串,那么你可以使用TreeNode.Value储存。这里有一个你可以参考的例子。

<asp:TreeView ID="TreeView1" runat="server" onclick=" __doPostBack('','');" 
     ontreenodecheckchanged="TreeView1_TreeNodeCheckChanged"> 
    </asp:TreeView> 

并加载树

 if (!IsPostBack) 
     { 
      TreeNode node = new TreeNode("RootNode"); 
      TreeView1.Nodes.Add(node); 

      TreeNode childNode = new TreeNode("ChildNode"); 
      childNode.ShowCheckBox = true; 
      childNode.Value = "[email protected]"; 
      node.ChildNodes.Add(childNode); 
     } 

和检查CheckChanged事件处理

protected void TreeView1_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e) 
    { 
     TextBox1.Text = e.Node.Value; 
    } 
+0

我得到的部分没有问题,但正如我所说,我试图让通过JavaScript的价值。 – 2011-05-14 15:42:08