DataRow.RowError プロパティ
行のカスタム エラー説明を取得または設定します。
Public Property RowError As String
[C#]
public string RowError {get; set;}
[C++]
public: __property String* get_RowError();public: __property void set_RowError(String*);
[JScript]
public function get RowError() : String;public function set RowError(String);
プロパティ値
エラーを説明するテキスト。
解説
HasErrors プロパティを使用して、最初に、 DataRow にエラーが含まれるかどうかを確認します。
使用例
[Visual Basic, C#, C++] DataGrid コントロールに表示されるテーブルの 10 行のエラー テキストを設定する例を次に示します。
Private Sub SetRowErrors(ByVal myTable As DataTable)
' Set error text for ten rows.
Dim i As Integer
For i = 0 to 10
' Insert column 1 value into each error.
myTable.Rows(i).RowError = "ERROR: " & myTable.Rows(i)(1).ToString()
Next
' Get the DataSet for the table, and test it for errors.
Dim myDataSet As DataSet
myDataSet = myTable.DataSet
TestForErrors(myDataSet)
End Sub
Private Sub TestForErrors(ByVal myDataSet As DataSet)
' Test for errors. If DataSet has errors, test each table.
If myDataSet.HasErrors
Dim tempDataTable As DataTable
For Each tempDataTable in myDataSet.Tables
' If the table has errors, then print them.
If(tempDataTable.HasErrors) Then PrintRowErrs(tempDataTable)
Next
' Refresh the DataGrid to see the error-marked rows.
DataGrid1.Refresh()
End If
End Sub
Private Sub PrintRowErrs(ByVal myTable As DataTable)
Dim myDataRow As DataRow
For Each myDataRow in myTable.Rows
If(myDataRow.HasErrors) Then
Console.WriteLine(myDataRow.RowError)
End If
Next
End Sub
[C#]
private void SetRowErrors(DataTable myTable){
// Set error text for ten rows.
for(int i = 0; i < 10; i++){
// Insert column 1 value into each error.
myTable.Rows[i].RowError = "ERROR: " + myTable.Rows[i][1];
}
// Get the DataSet for the table, and test it for errors.
DataSet myDataSet = myTable.DataSet;
TestForErrors(myDataSet);
}
private void TestForErrors(DataSet myDataSet){
// Test for errors. If DataSet has errors, test each table.
if(myDataSet.HasErrors){
foreach(DataTable tempDataTable in myDataSet.Tables){
// If the table has errors, then print them.
if(tempDataTable.HasErrors) PrintRowErrs(tempDataTable);
}
// Refresh the DataGrid to see the error-marked rows.
dataGrid1.Refresh();
}
}
private void PrintRowErrs(DataTable myTable){
foreach(DataRow myDataRow in myTable.Rows){
if(myDataRow.HasErrors) {
Console.WriteLine(myDataRow.RowError);
}
}
}
[C++]
private:
void SetRowErrors(DataTable* myTable){
// Set error text for ten rows.
for(int i = 0; i < 10; i++){
// Insert column 1 value into each error.
myTable->Rows->Item[i]->RowError = String::Format( S"ERROR: {0}", myTable->Rows->Item[i]->Item[1] );
}
// Get the DataSet for the table, and test it for errors.
DataSet* myDataSet = myTable->DataSet;
TestForErrors(myDataSet);
}
void TestForErrors(DataSet* myDataSet){
// Test for errors. If DataSet has errors, test each table.
if(myDataSet->HasErrors){
System::Collections::IEnumerator* myEnum = myDataSet->Tables->GetEnumerator();
while (myEnum->MoveNext())
{
DataTable* tempDataTable = __try_cast<DataTable*>(myEnum->Current);
// If the table has errors, then print them.
if(tempDataTable->HasErrors) PrintRowErrs(tempDataTable);
}
// Refresh the DataGrid to see the error-marked rows.
dataGrid1->Refresh();
}
}
void PrintRowErrs(DataTable* myTable){
System::Collections::IEnumerator* myEnum1 = myTable->Rows->GetEnumerator();
while (myEnum1->MoveNext())
{
DataRow* myDataRow = __try_cast<DataRow*>(myEnum1->Current);
if(myDataRow->HasErrors) {
Console::WriteLine(myDataRow->RowError);
}
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
参照
DataRow クラス | DataRow メンバ | System.Data 名前空間 | SetColumnError | HasErrors