做了个treeview 想实现这样的功能 每个节点对应的信息都不同 当然父包含子 我在保存信息时提取了选中的节点的tag和taxt 放在另一个表中 属于一对多 实现的功能就是 双击这个节点 自动查询出来属于这个节点的另一个表的信息 条件就是这个节点的taxt和tag以及它本身的下一级所有节点的tag和text 去查所有的信息 请各位大哥给个思路 另外我实现了查询 但是是循环遍历双击节点的所有节点 然后循环填充dataset 这样每当我双击就会显示重复的信息 dataset.clear()也没用 不知道是为什么?
前台
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:GridView ID="GridView1" runat="server">
</ContentTemplate>
</asp:UpdatePanel>
当然上面还要加
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
后台
protected void TreeView1_SelectedNodeChanged1(object sender, EventArgs e)
{
DataTable dt = new DataTable();
string StrSql = "select * from 表 where …… 绑定GridView
}
TreeNode tr = new TreeNode();
tr.Text = "政府栏目管理";
tr.Value = "0";
TreeView1.Nodes.Add(tr);
fillnode(tr, 0);
/// 填充字节点
public void fillnode(TreeNode tree, int i)
{
try
{
DataTable dt = new DataTable();
shu.Sqlstring = "select * from info_lanmu where l_fid=" + i;
dt = shu.GetDataSet().Tables[0];
foreach (DataRow dr in dt.Rows)
{
TreeNode tc = new TreeNode();
tc.Text = dr["l_name"].ToString();
tc.Value = dr["l_id"].ToString();
tc.NavigateUrl = "mess.aspx?lanmuid=" + dr["l_id"].ToString();
tc.Target = "mainFrame";
tree.ChildNodes.Add(tc);
fillnode(tc, Convert.ToInt16(dr["l_id"].ToString()));
}