Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / У начинающего есть вопрос по DataGrid. / 8 сообщений из 8, страница 1 из 1
26.05.2004, 16:26
    #32535058
dencat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
Вопрос в следующем.

Есть форма, на форме DataGrid и несколько TextBox.

DataGrid заполняется из DataSet, содержит одну таблицу.

Как сделать, чтобы при выборе строки в DataGrid, мышью или клавишами в TextBox появлялись поля выбранной записи?

И какое событие DataGrid происходит при переходе на другую запись?

Зарание спасибо.
...
Рейтинг: 0 / 0
26.05.2004, 16:52
    #32535122
sposad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
Сам не шибко знающий, но такое делал.

Источником данных для текстбокса выставляешь тот же датасет, ту же таблицу в датасете, из которой происходит заполнение датагрида и то поле таблицы, которое надо. При этом текстбокс и отражает данные текущей записи датагрида.
Про события сейчас нечего не скажу. Просто пока сам не знаю.
...
Рейтинг: 0 / 0
26.05.2004, 20:04
    #32535523
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
>Как сделать, чтобы при выборе строки в DataGrid, мышью или клавишами в TextBox появлялись поля выбранной записи?

Используйте DataBindings
Код: plaintext
1.
TextBox.DataBindings.Add("Text", DataSet, "TableName.ColumnName");

>И какое событие DataGrid происходит при переходе на другую запись?

У DataGrid можно использовать CurrentCellChanged

Но лучше использовать PositionChanged у CurrencyManager или RowChanged у DataTable.
...
Рейтинг: 0 / 0
26.05.2004, 22:39
    #32535640
dencat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
Я сделал так:

txtCompany.Text = dsCust.Tables("CompanyTbl").Rows(dgForm1.CurrentCell.RowNumber).Item("Компания")
...
Рейтинг: 0 / 0
27.05.2004, 07:59
    #32535800
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
>txtCompany.Text = dsCust.Tables("CompanyTbl").Rows(dgForm1.CurrentCell.RowNumber).Item("Компания")

!!! Смотрите внимательно этот вариант вас может подвести при сортировке, фильтрации DefaultDataView - (тот к которому как раз и привязывается DataGrid), так как Rows индекс не будет совпадать с индексом этого DataView.

И вообще используйте преимущества новой технологии работы с данными. Ведь в DataGrid нет события при переходе на другую запись не потому что злые программисты из MS сделали так специально. На самом деле нам предлагается отличная альтернатива, когда вы абстрагируетесь от различных элементов управления, сегодня у вас используется DataGrid, завтра DataView. Поэтому CurrencyManager вам в помощь.

Вот пример на C#
/topic/93628

Если что переведу его на VB.NET
...
Рейтинг: 0 / 0
27.05.2004, 13:41
    #32536653
dencat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
Если можно, переведите:)
...
Рейтинг: 0 / 0
27.05.2004, 14:07
    #32536743
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
>Если можно, переведите:)

Пусть у нас в форме есть:
Код: plaintext
1.
private m_crm as System.Windows.Forms.CurrencyManager
Такой код например в load формы:
Код: plaintext
1.
2.
m_crm = Me.BindingContext(Me.dataGrid1.DataSource, Me.dataGrid1.DataMember)
AddHandler m_crm.PositionChanged, AddressOf myTable_PositionChanged ' подпишимся на событие PositionChanged

Наш обработчик события
Код: plaintext
1.
2.
3.
private Sub myTable_PositionChanged(sender as Object, e as System.EventArgs)
   MsgBox("Перешли на другую позицию")
End Sub

Проверить код сейчас не могу, пишите если какие то проблемы или что то непонятно.
...
Рейтинг: 0 / 0
27.05.2004, 15:19
    #32536944
dencat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
У начинающего есть вопрос по DataGrid.
Спасибо.Сейчас попробую.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / У начинающего есть вопрос по DataGrid. / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]