DataGridViewCellValidatingEventArgs クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
CellValidating コントロールの DataGridView イベントのデータを提供します。
public ref class DataGridViewCellValidatingEventArgs : System::ComponentModel::CancelEventArgs
public class DataGridViewCellValidatingEventArgs : System.ComponentModel.CancelEventArgs
type DataGridViewCellValidatingEventArgs = class
inherit CancelEventArgs
Public Class DataGridViewCellValidatingEventArgs
Inherits CancelEventArgs
- 継承
例
次のコード例では、 イベントを CellValidating 処理して、ユーザーが正の整数のみを入力するようにします。 この例は、リファレンス トピックで使用できる大きな例の VirtualMode 一部です。
void VirtualConnector::dataGridView1_CellValidating
(Object^ sender, DataGridViewCellValidatingEventArgs^ e)
{
int newInteger;
// Don't try to validate the 'new row' until finished
// editing since there
// is not any point in validating its initial value.
if (dataGridView1->Rows[e->RowIndex]->IsNewRow)
{
return;
}
if (!Int32::TryParse(e->FormattedValue->ToString(),
newInteger) || (newInteger < 0))
{
e->Cancel = true;
}
}
private void dataGridView1_CellValidating(object sender,
DataGridViewCellValidatingEventArgs e)
{
dataGridView1.Rows[e.RowIndex].ErrorText = "";
int newInteger;
// Don't try to validate the 'new row' until finished
// editing since there
// is not any point in validating its initial value.
if (dataGridView1.Rows[e.RowIndex].IsNewRow) { return; }
if (!int.TryParse(e.FormattedValue.ToString(),
out newInteger) || newInteger < 0)
{
e.Cancel = true;
dataGridView1.Rows[e.RowIndex].ErrorText = "the value must be a non-negative integer";
}
}
Private Sub dataGridView1_CellValidating(ByVal sender As Object, _
ByVal e _
As DataGridViewCellValidatingEventArgs) _
Handles dataGridView1.CellValidating
Me.dataGridView1.Rows(e.RowIndex).ErrorText = ""
Dim newInteger As Integer
' Don't try to validate the 'new row' until finished
' editing since there
' is not any point in validating its initial value.
If dataGridView1.Rows(e.RowIndex).IsNewRow Then Return
If Not Integer.TryParse(e.FormattedValue.ToString(), newInteger) _
OrElse newInteger < 0 Then
e.Cancel = True
Me.dataGridView1.Rows(e.RowIndex).ErrorText = "the value must be a non-negative integer"
End If
End Sub
注釈
イベント DataGridView.CellValidating を使用すると、新しい値が無効な場合に現在のセルへの変更を取り消すことができます。 プロパティを FormattedValue 使用して、現在の値を確認します。 現在のセルの状態を確認するには、 プロパティと ColumnIndex プロパティをRowIndex使用して、コレクションからセルにDataGridView.Rowsアクセスします。 変更を取り消すには、 プロパティを Cancel に true
設定します。
このイベントがデータ バインド モードで取り消されると、新しい値は基になるデータ ソースにプッシュされません。 このイベントが仮想モードで取り消されると、 DataGridView.CellValuePushed イベントは発生しません。
プロパティ
Cancel |
イベントをキャンセルするかどうかを示す値を取得または設定します。 (継承元 CancelEventArgs) |
ColumnIndex |
検証する必要のあるセルの列インデックスを取得します。 |
FormattedValue |
検証する必要のあるセルの書式指定済みの内容を取得します。 |
RowIndex |
検証する必要のあるセルの行インデックスを取得します。 |
メソッド
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
こちらもご覧ください
.NET