表user
编号 年级 班级 姓名
111 初一 1班 AA
112 初一 1班 BB
113 初一 2班 CC
114 初二 2班 DD
...
效果:
初一
-1班
--AA
--BB
-2班
--CC
初二
-2班
--DD
当点击AA时:打开student_detail.asp?ID={编号}
编号 年级 班级 姓名
111 初一 1班 AA
112 初一 1班 BB
113 初一 2班 CC
114 初二 2班 DD
...
效果:
初一
-1班
--AA
--BB
-2班
--CC
初二
-2班
--DD
当点击AA时:打开student_detail.asp?ID={编号}
{ BindTreeView(); } private void BindTreeView()
{
TreeNode node = new TreeNode();
node.Expanded = true;
node.Text = "所有数据";
DataTable data1 = Dbase.GetTable(string.Format(@"Select distinct 年级 from table1"));
for (int i = 0; i < data1.Rows.Count; i++)
{
string value=data1.Rows[i][0].ToString();
TreeNode node1 = new TreeNode();
node1.Text = value;
CreateChildNode(node1, value);
node.ChildNodes.Add(node1);
}
TreeView1.ShowLines = true;
TreeView1.Nodes.Add(node);
} private void CreateChildNode(TreeNode node1, string value)
{
DataTable data2 = Dbase.GetTable(string.Format(@"Select distinct 班级 from table1 where 年级='{0}'",value));
for (int i = 0; i < data2.Rows.Count; i++)
{
string value2 = data2.Rows[i][0].ToString();
TreeNode node = new TreeNode();
node.Text = value2;
CreateNewNode(value, value2, node);
node1.ChildNodes.Add(node);
}
} private void CreateNewNode(string value, string value2, TreeNode node)
{
DataTable data3 = Dbase.GetTable(string.Format(@"select distinct 姓名 from table1 where 年级='{0}' and 班级='{1}'",value,value2));
for (int i = 0; i < data3.Rows.Count; i++)
{
string value3 = data3.Rows[i][0].ToString();
TreeNode node4 = new TreeNode();
node4.Text = value3;
node.ChildNodes.Add(node4);
}
}
{
if (!IsPostBack)
{
BindTreeView();
}
} private void BindTreeView()
{
TreeNode node = new TreeNode();
node.Expanded = true;
node.Text = "所有数据";
DataTable data1 = Dbase.GetTable(string.Format(@"Select distinct 年级 from table1"));
for (int i = 0; i < data1.Rows.Count; i++)
{
string value=data1.Rows[i][0].ToString();
TreeNode node1 = new TreeNode();
node1.Text = value;
CreateChildNode(node1, value);
node.ChildNodes.Add(node1);
}
TreeView1.ShowLines = true;
TreeView1.Nodes.Add(node);
} private void CreateChildNode(TreeNode node1, string value)
{
DataTable data2 = Dbase.GetTable(string.Format(@"Select distinct 班级 from table1 where 年级='{0}'",value));
for (int i = 0; i < data2.Rows.Count; i++)
{
string value2 = data2.Rows[i][0].ToString();
TreeNode node = new TreeNode();
node.Text = value2;
CreateNewNode(value, value2, node);
node1.ChildNodes.Add(node);
}
} private void CreateNewNode(string value, string value2, TreeNode node)
{
DataTable data3 = Dbase.GetTable(string.Format(@"select distinct 姓名 from table1 where 年级='{0}' and 班级='{1}'",value,value2));
for (int i = 0; i < data3.Rows.Count; i++)
{
string value3 = data3.Rows[i][0].ToString();
TreeNode node4 = new TreeNode();
node4.Text = value3;
node.ChildNodes.Add(node4);
}
}
Dbase.GetTable()
Dbase是什么,哪里来的?
{
private static string connString = @"Data Source=.;Initial Catalog=*** ID=**;PWD=***"; public static DataTable GetTable(string sql)
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
try
{
conn.Open();
sda.Fill(dt);
return dt;
}
catch (SqlException ex)
{
throw;
}
finally
{
sda.Dispose();
cmd.Dispose();
conn.Close();
}
}}
的时候,我需要先在项目中建这个public class Dbase{}类吗,
是的,当然如果你项目中已经有了其它的数据库操作类,你也可以用自己项目中的,如SQLHelper等之类的