我正在使用DevExpress的xtragrid控件。在我的应用程序中,我在运行时设置了gridcontrol的datasource属性,但是当我的表单显示时它没有显示我更新的表值。
如何解决此问题?
我有一个主要形式&其他是孩子。我把我的网格视图放在我的孩子表格上这实际上是一个用户控件。在那个用户控件中我有我的gridview&一个按钮项目&当我点击按钮然后打开一个表格&我填写表格&我在网格视图中显示的这些信息,它工作正常。
我的主要表单也有一个按钮。当我点击该按钮时,同样的表格也会被打开&当我填写该表单中的数据时,我想在我的网格视图中显示该信息,该信息位于用户控件上,我使用了datasource
属性以及refreshdatasource()
网格控制方法,但它没有在我的网格视图中显示插入的值。我在运行时创建了gridview的列。我现在该怎么办?
我为此使用了事件处理。我的事件在详细表单上声明,当我点击栏按钮项目时打开。事件声明如下 -
public event DataAddedEventHandler DataAdded;
public delegate void DataAddedEventHandler();
下面是事件处理功能&在用户控制上的事件登记 -
ofrmAddContact
是我的详细信息表格的对象。
ofrmAddContact.DataAdded += new frmAddContact.DataAddedEventHandler(AddRow);
private void AddRow()
{
xgBase.DataSource = dbContact.selectAllContacts();
xgBase.RefreshDataSource();
}
当我点击用户控件的栏按钮项以及点击主表单按钮时注册事件
感谢...
答案 0 :(得分:1)
转到设计视图并使用正确的数据成员名称创建列。检查您是否提供了正确的数据成员名称。
以下是一些例子,如果你想看看。
http://documentation.devexpress.com/#WindowsForms/CustomDocument3000
http://smartbear.com/support/viewarticle/14581/
http://www.devexpress.com/products/net/controls/winforms/grid/
答案 1 :(得分:0)
尝试致电
gridControl.RefreshDataSource();
答案 2 :(得分:-2)
我解决了我的问题,因为我的用户控制对象