【问题标题】:Create TreeView with events programmatically以编程方式创建带有事件的 TreeView
【发布时间】:2014-06-08 12:27:21
【问题描述】:

我正在以编程方式在表格的一行内创建一棵树。 工作正常,但无法调用分配的事件:

TreeView arbolCapas = new TreeView();
            arbolCapas.ID = "capas";
            foreach (String capa in servicio.Capas)
            {
                TreeNode childNodes = new TreeNode();
                childNodes.Text = capa;
                childNodes.ShowCheckBox = true;
                childNodes.SelectAction = TreeNodeSelectAction.None;         
                arbolCapas.Nodes.Add(childNodes);                
            }            
            arbolCapas.SelectedNodeChanged +=new EventHandler(arbolCapas_TreeNodeCheckChanged);
            tbC.Controls.Add(arbolCapas);
            tbR.Cells.Add(tbC);

 protected void arbolCapas_TreeNodeCheckChanged(Object sender, EventArgs e)
        {
            TreeView elemento = (TreeView)(((CheckBox)sender).Parent);
             foreach (TreeNode node in elemento.CheckedNodes) 
             {                //if (node.Checked)   
             }
        }

当子节点的复选框被选中时如何调用事件?

非常感谢。

【问题讨论】:

    标签: asp.net events treeview programmatically-created


    【解决方案1】:

    请更改 childNodes.SelectAction = TreeNodeSelectAction.None 到 childNodes.SelectAction = TreeNodeSelectAction.Select;

    【讨论】:

      【解决方案2】:

      我通过添加事件找到了解决方案,如下所示:

      arbolCapas.Attributes.Add("onclick", "OnCheckBoxCheckChanged(event)");
      

      然后,在 javascript 中:

      function OnCheckBoxCheckChanged(evt) {
              alert("check change");
      }
      

      解决办法:

      http://geekswithblogs.net/ranganh/archive/2009/01/21/updated-asp.net-treeview-checkboxes-ndash-check-all-ndash-javascript.aspx

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-19
        • 2011-10-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多