Вопрос

В DataGridView У меня есть Флакторы Databound. Анкет Но если я проверяю или снимаю несколько флажков, не все изменения сохраняются. (Это не запускает метод набора свойств на всех, возможно, на каждом 2 -м). Однако, если я после каждой фиксации флажки, нажмите на другую ячейку (столбец) перед следующим флажком, то все действия запустит методы установки. Таким образом, кажется, что валидация ячейки работает не на основе для каждой клетки, а на основе в соответствии с соглашением (для флажести). Итак, как вы решаете это?

Это было полезно?

Решение

Нашел ответ: DataGridView с проблемой ячейки флажки

Но, наверное, легкая альтернатива - поместить метод кнопки «Сохранить»:

DataGridView.EndEdit();

Другие советы

Не совсем ясно, что вы пробовали, а что не работает. Я предполагаю, что у вас есть приложение Winform и используете SQLDataSource, чтобы связать таблицу SQL-Server с вашей сеткой. В вашей базе данных есть полевое поле (бит), поэтому сетка автоматически генерирует DataGridViewCheckboxColumn. Вы пытаетесь сохранить все изменения, которые пользователь сделал, когда он нажимает на кнопку «Сохранить».

Все эти догадки правильно?

Все, что вам нужно сделать, это обновить свой набор данных/DataTable с помощью DataAdapter.

Private Sub BtnSaveChanges_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSaveChanges.Click
    Me.FooTableAdapter.Update(DataSet1.Foo)
End Sub

MSD-Example: http://msdn.microsoft.com/en-use/library/fbk67b6z.aspx

Если изменения должны быть сохранены непосредственно в базу данных, вы можете обрабатывать CurrentItemChanged-Event привязки.

Private Sub FooBindingSource_CurrentItemChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles FooBindingSource.CurrentItemChanged
     Dim thisDataRow As DataRow = DirectCast(DirectCast(sender, BindingSource).Current, DataRowView).Row
     If thisDataRow.RowState = DataRowState.Modified Then
         Me.FooTableAdapter.Update(thisDataRow)
     End If
End Sub
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top