Я добавил дерево к моей системе. Мне удалось показать содержимое древовидной структуры. Но результат не такой, какой я ожидал. Здесь я добавил изображение вывода. Пожалуйста, взгляните на это.Почему Treeview не показывает иерархию?
ASPX код
<asp:TreeView ID="TreeView1" runat="server" ImageSet="XPFileExplorer"
NodeIndent="15">
<HoverNodeStyle Font-Underline="True" ForeColor="#6666AA" />
<NodeStyle Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black" HorizontalPadding="2px"
NodeSpacing="0px" VerticalPadding="10px"></NodeStyle>
<ParentNodeStyle Font-Bold="False" />
<SelectedNodeStyle BackColor="#B5B5B5" Font-Underline="False" HorizontalPadding="0px"
VerticalPadding="2px" />
</asp:TreeView>
C# код
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
dt=getDataObj.treeSketch();
PopulateTreeView(dt, 0, null);
}
}
private void PopulateTreeView(DataTable dsParent, int parentId, TreeNode treeNode)
{
foreach (DataRow row in dsParent.Rows)
{
TreeNode child = new TreeNode
{
Text = row["FUNCTION_NAME"].ToString(),
Value = row["FUNCTION_CODE"].ToString()
};
if (parentId == 0)
{
TreeView1.Nodes.Add(child);
dt = getDataObj.loadTree(child);
PopulateTreeView(dt, int.Parse(child.Value), child);
}
else
{
treeNode.ChildNodes.Add(child);
}
}
}
В здесь узлы заглавными буквами ар главный узел и другие - дочерние узлы. Почему он не выглядит как дерево? Как заставить его работать?
Запрос
public DataTable loadTree(TreeNode child)
{
string strQuery = @"select FUNCTION_CODE,USER_TYPE from [WEB_FUNCTIONACCESS]
where FUNCTION_CODE = '"+ child +"' ";
return SqlHelper.ExecuteDataset(strConnStringAppeal, CommandType.Text, strQuery).Tables[0];
}
На самом деле этот код я нашел в Интернете. Так что даже у меня пока нет правильного представления об этом – Mike
Можете ли вы отлаживать код локально и проходить через линии? – woodykiddy
как вы думаете, что мне делать, чтобы сделать эту работу? – Mike