我知道的是在数据访问层写好SQL语句,然后到业务逻辑层写出树,再到界面层调用
解决方案 »
- 请教使用WebRequest和WebResponse处理中文出现乱码的问题
- 让页面不显示状态栏,菜单栏,工具栏
- c#不可访问,因为它受保护级别限制;
- 检索 COM 类工厂中 CLSID 为 {465C07FB-F260-4A66-ADC5-41CE6D477DBF} 的组件时失败
- 学习C#心得
- 如何在Design Time获取控件的事件值?
- 在.NET 下将一个数据表的某个字段的值做为查询另一张表的WHERE条件.....
- c# treeview
- 哪里有treeview下载啊?
- 急问一个关于c#中声音文件停止播放的问题
- 关于datagridview
- C# 1、对话框的最小化,最大化,关闭按钮,如何失效?
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
this.trvKinds.Nodes.Add(readTableToTree());
trvKinds.ExpandLevel=1;
}
}
private TreeNode readTableToTree()
{
using(AddressAccess da = new AddressAccess())
{
string mAddressID = "32000000000";
string mAddressName = "某城市";
string mAddressType = "22";
TreeNode rootNode=new TreeNode();
DataSet ds = da.LoadAddress();
DataTable dt = ds.Tables[0];
DataRow[] rows = dt.Select("chrtype='21' or chrtype='22' or chrtype='23'");
if (rows.GetLength(0) != 0)
{
mAddressName = rows[0]["chraddressname"].ToString().Trim();
mAddressType = rows[0]["chrtype"].ToString().Trim();
}
rootNode.Text = mAddressName;
rootNode.Target = "SlaveFrame";
rootNode.NavigateUrl = "../Basic/tblAddressList.aspx?AddressID="+mAddressID+"&AddressName=" + mAddressName;
this.creatTree(ref rootNode,mAddressType,ref dt,"");
return rootNode;
}
}
//创建树
private void creatTree(ref TreeNode root,string mType,ref DataTable dt,string id)
{
DataRow[] rows = null;
switch (mType)
{
case "21":
case "22":
case "23":
rows=dt.Select("substring(chraddressid,9,4) ='0000' and (chrtype='31' or chrtype='32' or chrtype='33')","chraddressid");
break;
case "31":
case "32":
case "33":
rows=dt.Select("substring(chraddressid,11,2) ='00' and substring(chraddressid,1,8) = '" + id.Substring(0,8).ToString() + "' and (chrtype='41' or chrtype='42')","chraddressid");
break;
case "41":
case "42":
// rows=dt.Select("substring(chraddressid,1,10) = '" + id.Substring(0,10).ToString() + "' and (chrtype='51')","chraddressid");
break;
case "51":
return;
}
if (mType != "41" && mType != "42")
{
foreach(DataRow row in rows)
{
TreeNode rootNode = new TreeNode();
rootNode.Text = row["chraddressname"].ToString().Trim();
rootNode.Target = "SlaveFrame";
rootNode.NavigateUrl = "../Basic/tblAddressList.aspx?AddressID="+row[tblAddressData.CHRADDRESSID_FIELD].ToString().Trim()+"&AddressName=" + row[tblAddressData.CHRADDRESSNAME_FIELD].ToString().Trim() ;
root.Nodes.Add(rootNode);
this.creatTree(ref rootNode,row["chrtype"].ToString(),ref dt,row["chraddressid"].ToString().Trim());
}
}
}