这个事件不会主动postback,需要手动写javascript触发。对网上找到的方法做了些改进,增加UpdatePanel,以免页面不停的刷。这里就不考虑性能神马的了,因为既然项目已经允许选择使用TreeView服务器控件了,也就不要在乎多一个UpdatePanel了。
前台页面
<html> <head runat="server"> <title></title> <script type="text/javascript"> function postBackByObject() { var o = window.event.srcElement; if (o.tagName == "INPUT" && o.type == "checkbox") { //第一个参数写UpdatePanel的ID,否则就是整个页面刷了 __doPostBack("UpdatePanel1", ""); } } </script> </head> <body> <form id="form1" runat="server"> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:TreeView runat="server" ID="treeView1" OnTreeNodeCheckChanged="treeView1_TreeNodeCheckChanged"> </asp:TreeView> </ContentTemplate> </asp:UpdatePanel> </form> </body> </html>
后台页面
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { treeView1.Attributes.Add("onclick", "postBackByObject()"); } }
到此这篇关于TreeNodeCheckChanged事件触发方法代码实例就介绍到这了。人总会遇到挫折,会有低潮,会有不被人理解的时候,会有要低声下气的时候,这些时候恰恰是人生最关键的时候。在这样的时刻,我们需要耐心,满怀信心地去等待,相信,生活不会你,不会抛弃你。如果耐不住,你就看不到繁华。更多相关TreeNodeCheckChanged事件触发方法代码实例内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!