在Web应用程序中,如何让Treeview 对鼠标事件响应,单击,双击或拖动有一即可。
尽量不要用Onclick 提交页面,因提交后Treeview的值和控件的显示状态都变了。

解决方案 »

  1.   

    不用框架,不用NavigateUrl能不能行。
    Treeview 好象没有事件,那么能不能提交页面后能保持Treeview的Selectindex值和选中节点的显示不变
      

  2.   

    你需要用js来处理。
    参看
    http://community.csdn.net/Expert/TopicView3.asp?id=4695589
    中我的方法
      

  3.   

    如果是WINFROM上的好象就很难啊
      

  4.   

    web app 
    你需要用js来处理,例如:
    // Add it in your web header section in aspx file
    <script language="javascript">
    function setNodeIndex()
    {
    if( yourTreeView.clickedNodeIndex != "" && yourTreeView.clickedNodeIndex != "null" )
    document.all("NodeIndex").value=yourTreeView.clickedNodeIndex;
    else
    document.all("NodeIndex").value=yourTreeView.selectedNodeIndex;
    }
    </script>// Add it in your web form aspx file
    <input id="NodeIndex" type="hidden" name="NodeIndex" runat="server">// Add it in page_load event
    yourTreeView.Attributes.Add( "onclick", "setNodeIndex();" );// Use "NodeIndex" in your web app
    private TreeNode tnCurrent = null;if( NodeIndex.Value != "" && NodeIndex.Value.ToLower() != "null" )
    {
    yourTreeView.SelectedNodeIndex = NodeIndex.Value;
    tnCurrent = yourTreeView.GetNodeFromIndex( 
    yourTreeView.SelectedNodeIndex );
    // Do what you want here using "tnCurrent"
    }
    else
    tnCurrent = null;