asp.net的treeview控件的两个问题

时间:2013-07-12 02:48:11

标签: asp.net treeview

当我使用树视图控件时,我发现它的节点是否太多,树视图控件将超出表或页面,如何向树视图添加垂直滚动条以避免这种情况?

这是我的树视图的布局:

                           <td>
                                   <asp:TreeView ID="TreeView1" OnSelectedNodeChanged="Select_Change"  runat="server" 
                                               Height="348px">
                                    <HoverNodeStyle Font-Underline="True" ForeColor="#5555DD" />
                                    <NodeStyle Font-Names="Tahoma" Font-Size="10pt" ForeColor="Black" HorizontalPadding="0px"
                                    NodeSpacing="0px" VerticalPadding="0px" />
                                    <ParentNodeStyle Font-Bold="False" ImageUrl="~/images/bullet-red.png" />
                                    <RootNodeStyle ImageUrl="~/images/bullet.png" />
                                    <SelectedNodeStyle Font-Underline="True" ForeColor="#5555DD" HorizontalPadding="0px"
                                    VerticalPadding="0px" />

                                    </asp:TreeView>
                           </td>

另一个问题是:我写这个树视图的选择更改事件,如下所示:

    protected void Select_Change(Object sender, EventArgs e)
    {

        TextBox1.Text = "You selected: " + TreeView1.SelectedNode.Value;

    }

但是当这个事件发生时,页面总是刷新,如果我不想引起页面刷新,该怎么做?

2 个答案:

答案 0 :(得分:1)

回答你的问题1:如何向Treeview添加滚动条

 <div class="myTreeScroll">
     <%--Place Your Treeview in this div--%>
 </div>

在您的css文件或页面中添加此css:

.myTreeScroll {
width:300px;
height:200px;
overflow:auto;
border:1px solid #CCC; 
padding:5px 0;
position: relative;
}

希望它可以帮到你!

答案 1 :(得分:0)

您可以通过向树视图的容器元素添加overflow:auto;overflow:scroll;的CSS样式来完成滚动。

为防止页面重新加载,您可以将控件包装在UpdatePanel中,也可以使用JavaScript和ajax而不是回发。