Hello,
I have just upgraded my telerik components that I use inside our sitefinity custom controls so that I can use RadDropDownTree.
I have coded it as it is done on the demos webpage resources but only using a DataTable as DataSource .
The objects works just fine but the problem is although it recognizes and orders the elements in the correct hierarchy,
The child items does not get indented so instead of looking like this
+GrandParent1
-GrandParent2
+Parent1
-Parent2
+Child1
+Child2
they look like this
+GrandParent1
-GrandParent2
+Parent1
-Parent2
+Child1
+Child2
There is no property in the documents and in the public properties about the “indentation of child nodes” as far as I can see.
Shouldn't indentation be the default behaviour of a dropdown tree?
I mean it's almost the whole purpose of a dropdown tree instead of a DropDownList.
Am I missing something? Or is there something missing in the documentation about this, or is there a bug?
IBelow are my .ascx and .cs files so that you can see for yourselves that it is not different than the example documentation.
Thank you..
-------ASCX FILE------------------
<%@ Control Language="C#" AutoEventWireup="True" CodeBehind="GenericTreeFilter.ascx.cs" Inherits="MyNameSpace.GenericTreeFilter" %>
<telerik:RadAjaxManagerProxy ID="AjaxManagerProxy1" runat="server">
<AjaxSettings>
</AjaxSettings>
</telerik:RadAjaxManagerProxy>
<style type="text/css">
ul.tree-list
{
list-style:none;
padding:0;
margin:0;
height:300px;
}
li.tree-item
{
float:left;
width:260px;
padding: 0 10px;
border-left: solid 1px #b1d8eb;
height:300px;
}
</style>
<asp:SqlDataSource ID="Data1" runat="server"
ConnectionString="<%$ ConnectionStrings:CustomConnectionString %>"
ProviderName="<%$ ConnectionStrings:CustomConnectionString.ProviderName %>"
SelectCommand=""></asp:SqlDataSource>
<telerik:RadSkinManager ID="QsfSkinManager" runat="server" ShowChooser="true" />
<ul class="tree-list" style="margin-left: 100px;">
<li class="tree-item" style="border: none">
<asp:Label ID="FilterName" runat="server" font-names="myFont" Text="Generic Filter: "></asp:Label>
<telerik:RadDropDownTree ID="RadDropDownTree1" runat="server"
CheckBoxes="TriState"
ViewStateMode="Enabled"
Skin="Default"
DefaultMessage="Seçiniz"
DataFieldID="ID"
DataFieldParentID="PARENT_ID"
DataTextField="VALUE"
Width="250"
>
<DropDownSettings Width="250px"/>
</telerik:RadDropDownTree>
</li>
</ul>
------------------------------
--------ascx.cs file--------------
namespace MyNameSpace
{
///<Summary>GenericTreeFilter</Summary>
public partial class GenericTreeFilter : System.Web.UI.UserControl
{
.................
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
RadDropDownTree1.DataSource = GetTreeItems();
RadDropDownTree1.DataBind();
}
}
public DataTable GetTreeItems()
{
using (var connection = new OracleConnection(
ConfigurationManager.ConnectionStrings["CustomConnectionString"].ConnectionString))
using (var cmd = connection.CreateCommand())
{
cmd.CommandText = "select ID,PARENT_ID,PARENT_VALUE,VALUE from tblXXXXX”;
DataSet s = new DataSet();
using (OracleDataAdapter sdap = new OracleDataAdapter(cmd))
{
sdap.Fill(s);
}
connection.Close();
if (s.Tables.Count > 0)
return s.Tables[0];
else return new DataTable();
}
}
---------------------------------------------------------