0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
|
1 | |
DataTable textbox combobox18.04.2014, 21:50. Показов 6714. Ответов 13
Метки нет (Все метки)
Есть кобмобокс который привязан к dataset есть несколько текстбоксов, есть несколько кнопок очистить все поля, создать. Возникла проблема когда я хочу добавить новую строку в таблицу бд я нажимаю кнопку очистить она,она очищает все текстбоксы и задает combobox.selectindex=-1(раньше чем очищает textbox)(textbox и комбобокс привязаны к binding source одному и тому же только отображают разные данные в зависимости от выбранного элемента в комбобоксе.)Но когда я снова хочу выбрать элемент на котором я нажал "очистить" получаю в combobox пустую строку.После перезагрузки приложения все снова нормально.Так вот как мне реализовать логику очищение этих textbox
я делал просто textbox.text="" но как показала практика что это не очень хорошая идея.(Тоесть кнпка очистки как бы обновляет данные на время работы приложения этого мне не надо
0
|
18.04.2014, 21:50 | |
Ответы с готовыми решениями:
13
Combobox vs. DataTable Выборка в DataTable с использованием comboBox Привязка textBox's к объекту DataTable Привязка textBox к объекту DataTable к конкретной строке |
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
|
18.04.2014, 22:13 | 2 |
В чём вопрос? Как добавить строку в БД или как сохранить изменения? Текст программы тоже не помешал бы.
0
|
0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
|
18.04.2014, 22:23 [ТС] | 3 |
nmcf, как сделать что бы textbox стали пустыми,и ничего не изменяли с данными то есть вместо каких то значений не сохранялось значение пустой строки. Textbox databinding стоит свойство Text bindingsource
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
|
18.04.2014, 22:34 | 4 |
Отвяжи их от источников данных. Не будут ни на что влиять.
0
|
0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
|
18.04.2014, 22:39 [ТС] | 5 |
nmcf, Может подскажешь быстрый способ заполнения всех тексбоксов(10 штук данными из таблицы бд)
в зависимости от выбранного значения combobox. Понимаю что можно просто textbox.text= метод который получает индификатор с комбобокса и делает select. Но это долго... можно ли например сделать один запрос select * from ... и поместить например в массив а потом из этого массива уже загонять в тексбоксы.Или может есть вариант все таки проще
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
|
18.04.2014, 22:43 | 6 |
Ты велосипед изjбретаешь. Считай в DataTable нужную таблицу и потом просто привяжи к твоим текстбоксам её, указав какое именно поле отображать и они будут сами работать.
Добавлено через 1 минуту А dataGridView почему не используешь? С ним намного проще.
0
|
0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
|
18.04.2014, 22:56 [ТС] | 7 |
nmcf, Датагридвью мне не нравится(да и пользователям тоже)вносить данные в него и редактировать...
Приведу пример у менять есть таблица хранит 2 столбца индификатор и text который занимает очень много места... Тоесть в датагрид вывести текст больших размеров проблематично...Можно конечно выводить данные в датагрид а потом просто присваивать текстбоксам значение с грида ... но тут возникает проблема поиска думаю комбобокс лучший вариант(хотя можно все и сразу привязать комбо к гриду искать и выводить в текстбоксы) Но я думал есть вариант какой нить . Не мог бы ты привести пример как ты считываешь в DataColumn? Тоже обычным Sql запросом?
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
|
18.04.2014, 23:07 | 8 |
DataColumn - это колонка dataGridView имеется в виду?
0
|
0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
||||||
18.04.2014, 23:14 [ТС] | 9 | |||||
Не правильно написал в Datatable nmcf, покажи пример вот например имеется у меня в бд 3 столбца, как мне считать данные из них? я не могу сообразить...
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
|
18.04.2014, 23:18 | 10 |
Создаёшь DataSet, создаёшь DataAdapter с нужным SQL SELECT'ом. Считываешь адаптером в DataSet нужную таблицу. И всё. Пользуешься.
Добавлено через 29 секунд Колонки создадутся сами.
1
|
0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
|
18.04.2014, 23:21 [ТС] | 11 |
Не мог бы ты скинуть пример или ссылку на что нить заранее благодарен тебе nmcf,
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
||||||
18.04.2014, 23:22 | 12 | |||||
Вот пример, он немного о другом, но принцип ясен:
Читаются 2 таблицы из базы Access - Books и Series.
3
|
0 / 0 / 1
Регистрация: 29.03.2014
Сообщений: 57
|
||||||
18.04.2014, 23:39 [ТС] | 13 | |||||
nmcf, как вставить значение из dataset в текстбокс?
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,669
|
||||||
19.04.2014, 08:28 | 14 | |||||
Нужно привязать TextBox к желаемому полю.
Ты не совсем правильно делаешь. DataSet у тебя должен быть один на всю БД, в него загружаешь адаптерами все необходимые таблицы. Переменная для DataSet должна быть общедоступна, объяви её внутри класса твоей формы, а не внутри функции Experimetn.
2
|
19.04.2014, 08:28 | |
19.04.2014, 08:28 | |
Помогаю со студенческими работами здесь
14
Запрос к связанным таблицам (Access), через Datatable с выводом в два Combobox Поиск по БД из textBox, combobox Связь comboBox и textBox Поиск по БД из textBox, combobox Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |