Porady: sprawdzanie poprawności danych podczas przeprowadzania zmian w kolumnach
Sprawdzanie poprawności danych jest procesem sprawdzania wartości wprowadzanych w danych aplikacji. Sprawdzanie te wartości przed do wysyłania aktualizacji do magazynu danych podstawowych jest dobrą praktyką, która zmniejsza liczbę potencjalnych przeloty aplikacji i magazynu danych.
Uwaga
Projektant Dataset tworzy klasę częściowe, gdzie logiki sprawdzania poprawności mogą być dodawane do obiektu dataset.Zestaw danych generowanych przez projektanta nie będzie usunąć lub zmienić dowolny kod w klasie częściowe.Aby uzyskać więcej informacji, zobacz Porady: rozszerzanie funkcjonalności zestawu danych.
Można sprawdzić poprawność danych po zmianie wartości w kolumnie danych, odpowiadając na ColumnChanging zdarzenia. Podczas podniesione, zdarzenie to przekazuje argument zdarzenia (ProposedValue) zawierającego wartość, proponowane dla bieżącej kolumny. Na podstawie zawartości e.ProposedValue, można:
Zaakceptować wartość proponowanych przez nic się nie dzieje.
Odrzuć wartość proponowanych przez ustawienie błąd kolumny (SetColumnError) od wewnątrz obsługi zdarzenia zmiany w kolumnie.
Opcjonalnie użyj ErrorProvider formantu, aby wyświetlić komunikat o błędzie do użytkownika. Aby uzyskać więcej informacji, zobacz ErrorProvider — Składnik (Formularze systemu Windows).
Można również przeprowadzić sprawdzania poprawności podczas RowChanging zdarzenia. Aby uzyskać więcej informacji, zobacz Porady: sprawdzanie poprawności danych podczas przeprowadzania zmian w wierszach.
Aby sprawdzić poprawność danych jako zmiana wartości w kolumnie
Otwarcie zestawu danych w Projektant Dataset. Aby uzyskać więcej informacji, zobacz Porady: otwieranie zestawu w narzędziu Projektant obiektów Dataset.
Kliknij dwukrotnie kolumnę, którą chcesz sprawdzić. Ta akcja tworzy ColumnChanging obsługi zdarzeń DataTable.
Uwaga
Projektant Dataset nie tworzy automatycznie obsługi zdarzeń dla zdarzenia języka C#.Poniżej znajduje się kod, potrzebnych do obsługi zdarzenia.
Dodaj kod, aby zweryfikować, czy e.ProposedValue zawiera dane, które spełnia wymagania aplikacji. Jeżeli proponowana wartość jest niedopuszczalne, a następnie ustaw kolumnę, aby wskazać, że zawiera ona błąd.
Poniższy przykład kodu ustawia błąd kolumny po Quantity kolumna jest 0 lub mniej. Obsługi zdarzenia Zmiana kolumny powinno wyglądać podobnie do następującego:
'Visual Basic Private Sub Order_DetailsDataTable_ColumnChanging(ByVal sender As System.Object, ByVal e As System.Data.DataColumnChangeEventArgs) _ Handles Me.ColumnChanging If (e.Column.ColumnName = Me.QuantityColumn.ColumnName) Then If CType(e.ProposedValue, Short) <= 0 Then e.Row.SetColumnError(e.Column, "Quantity must be greater than 0") Else e.Row.SetColumnError(e.Column, "") End If End If End Sub // C# // Add this code to the DataTable // partial class. public override void EndInit() { base.EndInit(); ColumnChanging += SampleColumnChangingEvent; } public void SampleColumnChangingEvent(object sender, System.Data.DataColumnChangeEventArgs e) { if (e.Column.ColumnName == QuantityColumn.ColumnName) { if ((short)e.ProposedValue <= 0) { e.Row.SetColumnError("Quantity", "Quantity must be greater than 0"); } else { e.Row.SetColumnError("Quantity", ""); } } }
Zobacz też
Zadania
Wskazówki: wyświetlanie danych na formularzach systemu Windows
Porady: sprawdzanie poprawności danych w formancie DataGridView formularzy systemu Windows
Porady: łączenie z danymi w bazie danych