Форум программистов, компьютерный форум CyberForum.ru

C# и базы данных, ADO.NET

Войти
Регистрация
Восстановить пароль
 
Pantera1029
0 / 0 / 0
Регистрация: 07.04.2016
Сообщений: 16
#1

DevExpress, LookUpEdit, заполнение - C#

06.01.2017, 23:45. Просмотров 234. Ответов 8
Метки нет (Все метки)

Здравствуйте!
Только начинаю изучать элементы DevExpress, возникла проблема. Не получается заполнить LookUpEdit из бд. Хотелось бы вывести список фамилий.
Чего-то не хватает? Или что-то не так?
C#
1
2
3
4
5
6
7
8
private void ... (...)
{
   var db = new MyDateBase())
   LookUpEdit1.Properties.DataSource = db.People;
   LookUpEdit1.Properties.ValueMember = "ID_people";
   LookUpEdit1.Properties.DisplayMember = "Surname";
   LookUpEdit1.Properties.PopulateColumns();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2017, 23:45     DevExpress, LookUpEdit, заполнение
Посмотрите здесь:

C# DevExpress.xtragrid.GridControl
DevExpress xtraGrid и дополнительные поля C#
Добавление файла в GridControl (devExpress) C#
При загрузке формы происходит заполнение DataSet, но заполнение происходит не вполне корректно C#
C# GridControl в DevExpress. После того, как запрос срабатывает, ReadOnly столбца gridControl1 устанавливается в true
GridControl/DevExpress несколько GridView в одном GridControl C#
C# .NET 4.x Вывод информации в GridControl из DataTable (DevExpress)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Igr_ok
253 / 240 / 84
Регистрация: 04.08.2015
Сообщений: 624
07.01.2017, 01:26     DevExpress, LookUpEdit, заполнение #2
Цитата Сообщение от Pantera1029 Посмотреть сообщение
C#
1
2
3
LookUpEdit1.Properties.DataSource = db.People; 
LookUpEdit1.Properties.ValueMember = "ID_people"; 
LookUpEdit1.Properties.DisplayMember = "Surname";
Здесь всё правильно
Цитата Сообщение от Pantera1029 Посмотреть сообщение
C#
1
LookUpEdit1.Properties.PopulateColumns();
Эта строка не нужна по двум причинам.
1. Метод и так вызывается неявно, если столбцы не созданы в дизайнере или не добавлены в коде.
2. В LookUpEdit будут отображены все столбцы, в том числе и ID_people, что явно лишнее.
Ну и методом исключения приходим к выводу, что ошибка здесь:
Цитата Сообщение от Pantera1029 Посмотреть сообщение
C#
1
var db = new MyDateBase())
Могу предположить, что создается новая БД без записей.
Pantera1029
0 / 0 / 0
Регистрация: 07.04.2016
Сообщений: 16
08.01.2017, 00:16  [ТС]     DevExpress, LookUpEdit, заполнение #3
Изменила код:
C#
1
2
3
4
5
6
7
private void ... (...)
{
   using (var db = new MyDateBase())
   LookUpEdit1.Properties.DataSource = db.People;
   LookUpEdit1.Properties.ValueMember = "ID_people";
   LookUpEdit1.Properties.DisplayMember = "Surname";
}
проверила через отладчик, данные на месте, но список не отображается
nedel
519 / 520 / 226
Регистрация: 09.04.2014
Сообщений: 1,239
Завершенные тесты: 1
08.01.2017, 01:31     DevExpress, LookUpEdit, заполнение #4
констркукция using уничтожает объект при выходе из ее котекста, то есть при переходе к 5 строке...
C#
1
2
3
4
5
6
7
private void ... (...)
{
   LookUpEdit1.Properties.ValueMember = "ID_people";
   LookUpEdit1.Properties.DisplayMember = "Surname";
   var db = new MyDateBase();
   LookUpEdit1.Properties.DataSource = db.People;
}
Pantera1029
0 / 0 / 0
Регистрация: 07.04.2016
Сообщений: 16
10.01.2017, 18:32  [ТС]     DevExpress, LookUpEdit, заполнение #5
убрала using, всё равно данных нет.. странно
XIST
693 / 544 / 74
Регистрация: 01.10.2009
Сообщений: 1,752
Записей в блоге: 1
10.01.2017, 21:20     DevExpress, LookUpEdit, заполнение #6
Pantera1029, попробуйте без этого класса var db = new MyDateBase(); может там у Вас проблемы
Pantera1029
0 / 0 / 0
Регистрация: 07.04.2016
Сообщений: 16
10.01.2017, 22:15  [ТС]     DevExpress, LookUpEdit, заполнение #7
как без этого класса, если это моя база, в которой нужный мне список данных?
Igr_ok
253 / 240 / 84
Регистрация: 04.08.2015
Сообщений: 624
10.01.2017, 23:08     DevExpress, LookUpEdit, заполнение #8
Цитата Сообщение от Pantera1029 Посмотреть сообщение
LookUpEdit1.Properties.ValueMember = "ID_people";
LookUpEdit1.Properties.DisplayMember = "Surname";
Названия полей правильно написаны? Это тоже может быть причиной.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2017, 01:31     DevExpress, LookUpEdit, заполнение
Еще ссылки по теме:

C# .NET 4.x Запрет ячеек на редактирование, DevExpress, GridView
Заполнение Бд C#
C# GridControl DevExpress
C# Заполнение DGV по ID
DevExpress, gridview C#

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
XIST
693 / 544 / 74
Регистрация: 01.10.2009
Сообщений: 1,752
Записей в блоге: 1
11.01.2017, 01:31     DevExpress, LookUpEdit, заполнение #9
Pantera1029, обычный запрос в ручную.
Yandex
Объявления
11.01.2017, 01:31     DevExpress, LookUpEdit, заполнение
Ответ Создать тему
Опции темы

Текущее время: 09:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru