调试没出问题但是运行之后并没有实现我想要的
我是实现 在点击gridview的选择之后获取他的用户id,然后利用id来查询用户权限表中的信息,根据数据库中的信息,使treeview控件前面的复选框打钩,可是我运行的时候点击选择,treeview没反应~~~求大虾!!下面是代码:
protected void BindTreeRoot(int userid1, TreeNodeCollection treenode)
{
string sql = "";
foreach (TreeNode nodes in treenode)
{
//查找gridview中选择的那个用户所拥有的权限名称
sql = "select qxname from userqx where userid='" + userid1 + "'";
DataView dv = OADBHelper.GetDataTable(sql).DefaultView;
foreach (DataRowView drv in dv)
{
foreach (TreeNode node in treenode)
{
if (drv["qxname"].ToString() == node.Value.ToString())
{
node.Checked = true;
}
BindTreeRoot(userid1, node.ChildNodes);
}
}
}
}
//下面是我执行选择之后
protected void GridView1_SelectedIndexChanged1(object sender, EventArgs e)
{
GridViewRow row = GridView1.SelectedRow;
Session["userid"] = row.Cells[0].Text;
Session["username"] = row.Cells[1].Text;
int userid2 = Convert.ToInt32(Session["userid"]);
BindTreeRoot(userid2, TreeView2.Nodes);
} GridView treeview 复选框勾选
[解决办法]
> 调试没出问题但是运行之后并没有实现我想要的
应该是编译没问题,但是运行结果不对吧?
嗯,现在才是调试阶段,
在BindTreeRoot()和SelectedIndexChanged1的代码第一行各设一个断点,
然后勇敢地开始你的调试之旅吧
[解决办法]
单步执行程序,然后就可以察看各变量的数据是否正确了
[解决办法]
“调试没出问题”这是开发中的一种悲哀啊。
我的软件工程概念中,找到程序的问题是靠测试、而不是调试。