#c# #winforms #devexpress #datasource #xtragrid
#c# #winforms #devexpress #источник данных #xtragrid
Вопрос:
Я использую элемент управления xtragrid от DevExpress. В моем приложении я устанавливаю свойство datasource gridcontrol во время выполнения, но оно не показывает мое обновленное табличное значение при отображении моей формы.
Как решить эту проблему?
У меня есть одна основная форма, а другие — дочерние. Я разместил свой gridview в моей дочерней форме, которая на самом деле является пользовательским элементом управления. И в этом пользовательском элементе управления у меня есть мой элемент gridview amp; one bar button, и когда я нажимаю на кнопку, открывается одна форма, и я заполняю эту форму, и эта информация, которую я показываю в своем представлении сетки, работает нормально.
И в моей основной форме также есть одна кнопка. Когда я нажимаю на эту кнопку, открывается та же форма, и когда я заполняю данные в этой форме, я хочу показать эту информацию в моем представлении сетки, которое находится в пользовательском элементе управления, для этого я использовал datasource
свойство, а также refreshdatasource()
метод управления сеткой, но он не показывает вставленное значение в моем представлении сетки. Я создал столбцы моего gridview во время выполнения. Что мне теперь делать?
Для этого я использовал обработку событий. Мои события объявляются в форме сведений, которая открывается, когда я нажимаю на элемент кнопки панели. Объявление события выглядит следующим образом-
public event DataAddedEventHandler DataAdded;
public delegate void DataAddedEventHandler();
ниже приведена функция обработки событий и регистрация событий, которая находится в usercontrol-
ofrmAddContact
является объектом моей формы сведений.
ofrmAddContact.DataAdded = new frmAddContact.DataAddedEventHandler(AddRow);
private void AddRow()
{
xgBase.DataSource = dbContact.selectAllContacts();
xgBase.RefreshDataSource();
}
я регистрирую событие, когда нажимаю на элемент кнопки панели пользовательского элемента управления, а также когда я нажимаю на кнопку главной формы
Спасибо…
Комментарии:
1. я решил свою проблему, это произошло из-за моего объекта пользовательского контроля
Ответ №1:
Перейдите в режим конструктора и создайте столбцы с соответствующими именами элементов данных. Проверьте, правильно ли вы указали имена элементов данных.
Вот несколько примеров, если вы хотите взглянуть.
http://documentation.devexpress.com/#WindowsForms/CustomDocument3000
http://smartbear.com/support/viewarticle/14581/
http://www.devexpress.com/products/net/controls/winforms/grid/
Комментарии:
1. Я создал столбцы моего gridview во время выполнения.
2. @Richa: Опубликуйте свой код, чтобы посмотреть. Если вы правильно настроили источник данных и если после этого вы вызовете refreshhdatasource(). Это должно работать нормально. В противном случае покажите нам код, чтобы мы посмотрели. Иногда может отсутствовать какая-то простая вещь…
Ответ №2:
Попробуйте вызвать
gridControl.RefreshDataSource();
Комментарии:
1. Можете ли вы показать фрагмент кода, как вы устанавливаете источник данных и обновляете его
Ответ №3:
я решил свою проблему, это произошло из-за моего объекта пользовательского управления