客户要求导航栏做成类似资源管理器的样式,动态从数据库读数据做为结点。
我在网上查了一下,用treeview控件,但是得using Microsoft.Web.UI.WebControls;机子上的.net没有,得在微软的网站下载,下载之后安照readme安装完,运行build.bat提示错误,csc.exe不是内部命令...........
哪位高手做过,提示一下,或者还有什么办法,赐教一下,在此表示万分感谢!
解决问题一定给分!
我在网上查了一下,用treeview控件,但是得using Microsoft.Web.UI.WebControls;机子上的.net没有,得在微软的网站下载,下载之后安照readme安装完,运行build.bat提示错误,csc.exe不是内部命令...........
哪位高手做过,提示一下,或者还有什么办法,赐教一下,在此表示万分感谢!
解决问题一定给分!
而且C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322里面也没csc.exe文件呀!
是因为path设置的问题吧。
-----------------------------------------未能加载文件或程序集“microsoft[1].web.ui.webcontrols”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.IO.FileLoadException: 未能加载文件或程序集“microsoft[1].web.ui.webcontrols”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 程序集加载跟踪: 下列信息有助于确定程序集“microsoft[1].web.ui.webcontrols”无法加载的原因。
警告: 程序集绑定日志记录被关闭。
要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。
注意: 会有一些与程序集绑定失败日志记录关联的性能损失。
要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。
怎么办呀,
path怎么设置呀?能再教教我吗,谢谢!
在工具箱内点击右键->添加项目->找到webcontrols的dll,添加进去上面有兄弟已经说了,DLL所在路径就是你安装IEWebControls.exe时候选择的。如果你没有改变安装路径,应该是这个路径C:\program files\ie web controls\build 找到那个Microsoft.Web.UI.WebControls.dll,然后添加引用,然后在左侧工具栏点击右键选择“添加移除选项卡”,在.net framework组件下找到treeview 勾上。在你的工具栏里就可以看到Treeview了,拖到页面上,绑定数据。就可以用了。
TreeView.Nodes.Add("根节点","名称"); //定义根节点
foreach (DataRow dr in ds.Tables[0].Rows) //把值赋给节点不就行了吗
{
TNode node = new TNode();
node.Name = dr["ID"].ToString();
node.Text = dr["名称"].ToString();
TreeView.Nodes["根节点"].Nodes.Add(node);
}
不知道是不是我理解错了。
using System.Web.UI.HtmlControls;但现在只在本机上好用,传到网上空间里就报错
http://www.cwi-sy.com.cn/ChanPin2.aspx
这个是报错的网页地址下面是我的代码:
protected void Bind()
{
DataTable dt = ser.Select("select * from tbtree", "tbTree").tbTree;
//绑定第一层树
OleDbConnection con = new OleDbConnection(DB.path);
con.Open();
OleDbCommand com = new OleDbCommand("select * from tbtree", con);
OleDbDataReader reader = com.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
TreeNode tn = new TreeNode();
tn.Text = reader[1].ToString();
tn.Value = reader[0].ToString();
//绑定第二层树
OleDbCommand com1 = new OleDbCommand("select * from tbtree", con);
OleDbDataReader reader1 = com1.ExecuteReader();
while (reader1.Read())
{
if (reader[0].Equals(reader1[2]))
{
TreeNode tn1 = new TreeNode();
tn1.Text = reader1[1].ToString();
tn1.Value = reader1[0].ToString();
// tn1.NavigateUrl = "ChanPinJieShaodh.aspx?id=" + reader1[0].ToString() + "";
//绑定第三层树
OleDbCommand com2 = new OleDbCommand("select * from tbtree", con);
OleDbDataReader reader2 = com2.ExecuteReader();
while (reader2.Read())
{
if (reader1[0].Equals(reader2[2]))
{
TreeNode tn2 = new TreeNode();
tn2.Text = reader2[1].ToString();
tn2.Value = reader2[0].ToString(); tn2.NavigateUrl = "ChanPinJieShaodh.aspx?id=" + reader2[0].ToString() + "";
//绑定第四层树
OleDbCommand com3 = new OleDbCommand("select * from tbtree", con);
OleDbDataReader reader3 = com3.ExecuteReader();
while (reader3.Read())
{
if (reader2[0].Equals(reader3[2]))
{
TreeNode tn3 = new TreeNode();
tn3.Text = reader3[1].ToString();
tn3.Value = reader3[0].ToString();
tn2.ChildNodes.Add(tn3);
// Response.Write(reader3[0].ToString());
tn3.NavigateUrl = "ChanPinJieShaodh.aspx?id=" + reader3[0].ToString() + "";
//绑定第五层树
OleDbCommand com4 = new OleDbCommand("select * from tbtree", con);
OleDbDataReader reader4 = com4.ExecuteReader();
while (reader4.Read())
{
if (reader3[0].Equals(reader4[2]))
{
TreeNode tn4 = new TreeNode();
tn4.Text = reader4[1].ToString();
tn4.Value = reader4[0].ToString();
tn3.ChildNodes.Add(tn4);
// Response.Write(reader3[0].ToString());
tn4.NavigateUrl = "ChanPinJieShaodh.aspx?id=" + reader4[0].ToString() + "";
}
}
}
}
tn1.ChildNodes.Add(tn2);
}
} tn.ChildNodes.Add(tn1);
}
}
if (reader[2].ToString() == "0")
{
TreeView1.Nodes.Add(tn);
}
}
}
con.Close();
}
using System.Web.UI.HtmlControls;
也要放到bin目录里吗?我在本机什么错都没有,传到空间里就报错了