【发布时间】:2012-05-12 09:11:07
【问题描述】:
我是基础设施和 winGrids 的新手
我有下表的 SQL 数据库
Costumers
[ID][Name]
另外,我有 UserControl,它有 winGrid 和 add\remove 按钮。
当 UserControll 变为时,活动的 winGrid 数据源绑定到表
winGrd.DataSource = Tables.Costumers;
当用户想要从客户表中添加\删除数据时,他单击相关按钮。 表格已相应更改,但网格中显示的数据未更改。 我用过
winGrd.Refresh();
但是没有效果
有什么办法,欢迎提供代码示例
谢谢
---已编辑---- 添加代码:
private void BtnAdd_Click(object sender, System.EventArgs e)
{
//...
DB.DataProxy.AddCostumer(txtType.Text);
winGrd.Refresh();
//...
}
AddCostumer 方法最终会调用以下更新客户表的方法
public void AddCostumer(string type)
{
Costumers.InsertOnSubmit(new InsertOnSubmit{ Name = name});
}
【问题讨论】:
-
您应该显示用于更新数据库的代码。我怀疑您使用的是直接访问数据库而不更新 DataTable
Costumers -
我有使用 linq 的 DAL 层,表格正在更新!当我关闭 UserControll 并再次创建它时,显示的数据会更新。
-
也许我必须更清楚。 Costumers DataTable 是一个断开连接的对象,更新数据库上的表不会更改绑定到 Grid 的 DataTable 对象。我怀疑这是问题所在。您说用户单击一个按钮以从网格中删除一行。这就是我希望看到的代码 - buttonRemove_click 或 buttonAdd_Click
-
嘿,你可能是对的,我已经用将客户插入客户表的代码更新了问题。我如何“连接”客户表。
标签: c# winforms infragistics ultrawingrid