この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

DataGridViewCellValueEventHandler デリゲート

 

公開日: 2016年10月

処理するメソッドを表す、 CellValueNeeded イベントまたは CellValuePushed のイベント、 DataGridViewです。

名前空間:   System.Windows.Forms
アセンブリ:  System.Windows.Forms (System.Windows.Forms.dll 内)

public delegate void DataGridViewCellValueEventHandler(
	object sender,
	DataGridViewCellValueEventArgs e
)

パラメーター

sender
Type: System.Object

イベントのソース。

e
Type: System.Windows.Forms.DataGridViewCellValueEventArgs

イベント データを格納している DataGridViewCellValueEventArgs

このデリゲートを使用してでの仮想モードを実装する、 DataGridView コントロールです。 仮想モードの詳細については、次を参照してください。 Windows フォーム DataGridView コントロールでの仮想モードします。

DataGridViewCellValueEventHandler デリゲートを作成する場合は、イベントを処理するメソッドを指定します。 イベントをイベント ハンドラーに関連付けるには、デリゲートのインスタンスをイベントに追加します。 デリゲートを削除しない限り、そのイベントが発生すると常にイベント ハンドラーが呼び出されます。 イベント ハンドラー デリゲートの詳細については、次を参照してください。 NIB: イベントとデリゲートします。

次のコード例、 CellValuePushed データ ストア オブジェクトに更新し、新しいエントリを格納するイベントです。 この例で使用できる例の一部である、 DataGridView.VirtualMode リファレンス トピックです。

#region "data store maintance"
const int initialValue = -1;

private void dataGridView1_CellValueNeeded(object sender,
    DataGridViewCellValueEventArgs e)
{
    if (store.ContainsKey(e.RowIndex))
    {
        // Use the store if the e value has been modified 
        // and stored.            
        e.Value = store[e.RowIndex];
    }
    else if (newRowNeeded && e.RowIndex == numberOfRows)
    {
        if (dataGridView1.IsCurrentCellInEditMode)
        {
            e.Value = initialValue;
        }
        else
        {
            // Show a blank value if the cursor is just resting
            // on the last row.
            e.Value = String.Empty;
        }
    }
    else
    {
        e.Value = e.RowIndex;
    }
}

private void dataGridView1_CellValuePushed(object sender,
    DataGridViewCellValueEventArgs e)
{
    store.Add(e.RowIndex, int.Parse(e.Value.ToString()));
}
#endregion

private Dictionary<int, int> store = new Dictionary<int, int>();

.NET Framework
2.0 以降で使用可能
トップに戻る
表示: