winforms 问题,急急急

shenmixiaozi 2009-05-26 09:52:13
有一个窗体form1 上面有个treeview控件,上面有个添加节点的按钮,弹出另一个窗体from2
绑定treeview

public void BindTXL()
{
this.tvTXL.Nodes.Clear();
TreeNode node = new TreeNode();
node.Text = "我的通讯录";
node.Name = "0";
node.ImageIndex = 0;
string sqla = "select id,txlName from TXL";
DataSet ds = dbOperation.Query(sqla, "TXL");
TreeNode childNode = null;

foreach (DataRow row in ds.Tables[0].Rows)
{
childNode = new TreeNode();
string id = row["id"].ToString();
string name = row["txlName"].ToString();
childNode.Text = name;
childNode.Name = id;
childNode.ImageIndex = 0;
node.Nodes.Add(childNode);
// MessageBox.Show("绑定" + name);
}

this.tvTXL.Nodes.Add(node);
this.tvTXL.ExpandAll();
}




点击添加按钮事件


private void btnNew_Click(object sender, EventArgs e)
{
frmXJQZ xjqz = new frmXJQZ();
//xjqz.Owner = this;
xjqz.ShowDialog();//弹出from2 添加节点。
BindTXL();//重新绑定节点。
}


点断点运行的时候,第一次添加完毕,调用bindtxl()方法的时候,返回的数据集没有刚添加的那个节点,但是第二次添加的时候,节点都出来了(包括第一次添加的节点)。

问题是我第一次添加节点成功,然后重新绑定treeview ,treeview不刷新,但是第二次添加节点后就重新刷新了。用的是access数据库。请问这是什么原因造成的。
此代码原来利用sql server数据库是可以正常运行的没有出现这样的状况。
...全文
196 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaoweiting0609 2009-05-27
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 shenmixiaozi 的回复:]
引用 8 楼 zhaoweiting0609 的回复:
可以在form2中重新绑定一下

form2中绑定我也尝试了,没用!
[/Quote]

你调试跟踪一下,看一下什么问题,到底在Form2中发生了什么
shenmixiaozi 2009-05-27
  • 打赏
  • 举报
回复
在treeview上直接添加节点,未重新读取数据库,就这么解决了。谢谢大家的帮助
bbb332 2009-05-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 shui8iuhs 的回复:]
你可以重新绑定一下
[/Quote]
up
zcandyly2021 2009-05-26
  • 打赏
  • 举报
回复
up!
shui8iuhs 2009-05-26
  • 打赏
  • 举报
回复
你可以重新绑定一下
Neil198 2009-05-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 pennymay 的回复:]
C# code
private void btnNew_Click(object sender, EventArgs e)
{
frmXJQZ xjqz = new frmXJQZ();
//xjqz.Owner = this;
if(DialogResult.OK==xjqz.ShowDialog()) //弹出from2 添加节点。//把xjqz form关闭设置为OK
BindTXL();//重新绑定节点。
}
[/Quote]
UP
pennymay 2009-05-26
  • 打赏
  • 举报
回复

private void btnNew_Click(object sender, EventArgs e)
{
frmXJQZ xjqz = new frmXJQZ();
//xjqz.Owner = this;
if(DialogResult.OK==xjqz.ShowDialog()) //弹出from2 添加节点。//把xjqz form关闭设置为OK
BindTXL();//重新绑定节点。
}


shenmixiaozi 2009-05-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 zhaoweiting0609 的回复:]
可以在form2中重新绑定一下
[/Quote]
form2中绑定我也尝试了,没用!
zhaoweiting0609 2009-05-26
  • 打赏
  • 举报
回复
可以在form2中重新绑定一下
aight 2009-05-26
  • 打赏
  • 举报
回复
重新绑定。
薪水 2009-05-26
  • 打赏
  • 举报
回复
up!

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧