DataGridView.CellValuePushed Olay

Tanım

Denetimin VirtualModeDataGridView özelliği olduğunda true ve bir hücre değeri değiştiğinde ve temel alınan veri kaynağında depolama gerektirdiğinde gerçekleşir.

C#
public event System.Windows.Forms.DataGridViewCellValueEventHandler CellValuePushed;
C#
public event System.Windows.Forms.DataGridViewCellValueEventHandler? CellValuePushed;

Olay Türü

Örnekler

Aşağıdaki kod örneği, güncelleştirmeleri CellValuePushed ve yeni girişleri bir veri deposu nesnesinde depolamak için olayı işler. Bu örnek, başvuru konusunda bulunan VirtualMode daha büyük bir örneğin bir parçasıdır.

C#
#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>();

Açıklamalar

Özel veri depolarını kullanıcı tarafından belirtilen verilerle güncelleştirmek için sanal modda bu olayı kullanın. Denetimde CellValueNeeded görüntülenmek üzere veri deposundan değerleri almak için olayı işleyebilirsiniz.

Sanal mod hakkında daha fazla bilgi için datagridview denetimi Windows Forms sanal mod bölümüne bakın.

Olayları işleme hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.

Şunlara uygulanır

Ürün Sürümler
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Ayrıca bkz.