2009-04-22 2 views
2

У меня есть иерархический набор данных (например, География -> Область-> Страна -> Состояние), который должен отображаться в TreeView. Это было сделано, но проблема в том, что он занимает много места на веб-странице.Treeview внутри DropDown в ASP.NET

Итак, я подумал о том, чтобы использовать выпадающее меню, которое удерживало бы древовидное изображение ??? Получил несколько образцов из CodeProject без успеха.

Любые указатели или любые другие предложения по решению моей проблемы будут высоко оценены. :)

+0

не звучит как хорошая идея – JohnIdol

+0

Вот нить по этой теме на [forums.asp.net] (HTTP: // forums.asp.net/p/1003245/1325999.aspx#1325999). – 2010-03-20 12:53:16

ответ

1

Вы можете поместить его внутри <div> с опцией стиля, установленного для прокрутки, если оно переполняет

<div style="height: 200px; width: 300px; overflow: auto;"> 
    //Treeview 
</div> 
+0

Я сделал что-то похожее на это некоторое время назад. Получилось довольно рад. Я перегрузил функциональность выпадающего списка, чтобы вместо этого отобразить div, который вы подразумеваете. Он в основном стал переименованным выпадающим списком. Я использовал множество вложенных div для достижения панели с фильтрацией и целых 9 ярдов. –

3

Попробуйте сделать использование dropdownExtendar в Ajax управления инструментария.

Вот пример ...

<asp:UpdatePanel ID="upArea" runat="server"> 
<ContentTemplate> 
     <asp:TextBox ID="txtArea" runat="server" Width="100%" /> 
     <asp:DropDownExtender ID="txtArea_DropDownExtender" runat="server" 
     Enabled="True" TargetControlID="txtArea" DropDownControlID="CourseTreeView"> 
     </asp:DropDownExtender> 
     <asp:TreeView ID="CourseTreeView" runat="server" 
     OnSelectedNodeChanged="CourseTreeView_SelectedNodeChanged"          ShowLines="true" DataSourceID="xdsArea" PopulateNodesFromClient="false" BackColor="#99CCFF" Width="232px">                       <Nodes> 
      <asp:TreeNode Text="Gouse" PopulateOnDemand="false" Value="-1" /> 
      </Nodes> 
     </asp:TreeView> 
     <asp:XmlDataSource ID="xdsArea" runat="server" DataFile="~/XMLFile.xml" />