DataGridView.CellClick Olay

Tanım

Hücrenin herhangi bir bölümüne tıklandığında gerçekleşir.

C#
public event System.Windows.Forms.DataGridViewCellEventHandler CellClick;
C#
public event System.Windows.Forms.DataGridViewCellEventHandler? CellClick;

Olay Türü

Örnekler

Aşağıdaki kod örneği, bir CellClick denetimdeki görüntü sütunlarını kullanan bir Tic-Tac-Toe oyun uygulamasındaki olay DataGridView işleyicisini gösterir. Oyun bitmediği veya hücreye tıklanmadığı sürece, olay işleyicisi hücre değerini ve odeğişkenleriyle x temsil edilen iki Bitmap nesneden birine ayarlar.

Bu kod, How to: Work with Image Columns in the Windows Forms DataGridView Control (Windows Forms DataGridView Denetimindeki Görüntü Sütunlarıyla Çalışma) bölümünde gösterilen daha büyük bir örneğin parçasıdır.

C#
private void dataGridView1_CellClick(object sender,
    DataGridViewCellEventArgs e)
{

    if (turn.Text.Equals(gameOverString)) { return; }

    DataGridViewImageCell cell = (DataGridViewImageCell)
        dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];

    if (cell.Value == blank)
    {
        if (IsOsTurn())
        {
            cell.Value = o;
        }
        else
        {
            cell.Value = x;
        }
        ToggleTurn();
    }
    if (IsAWin())
    {
        turn.Text = gameOverString;
    }
}

Açıklamalar

Bu olay, kenarlıklar ve doldurma da dahil olmak üzere bir hücrenin herhangi bir bölümüne tıklandığında oluşur. Ayrıca, kullanıcı ara çubuğuna basıp bıraktığında, düğme hücresi veya onay kutusu hücresi odaktayken oluşur ve ARA ÇUBUĞU tuşuna basılırken hücreye tıklandığında bu hücre türleri için iki kez gerçekleşir.

Hücre içeriğine ne zaman tıklandığına karar vermek için olayı işleyebilir CellContentClick .

Bu olay fare konumu hakkında bilgi almaz. Olay işleyicisi fare konumu hakkında bilgiye ihtiyaç duyuyorsa, olayı kullanın CellMouseClick .

içindeki DataGridViewCheckBoxCelltıklamalar için, bu olay onay kutusu değeri değiştirmeden önce gerçekleşir, bu nedenle beklenen değeri geçerli değere göre hesaplamak istemiyorsanız, genellikle bunun yerine olayı işlersiniz DataGridView.CellValueChanged . Bu olay yalnızca kullanıcı tarafından belirtilen değer işlendiğinde gerçekleştiğinden ( genellikle odak hücreden ayrıldığında gerçekleşir) olayı da işlemeniz DataGridView.CurrentCellDirtyStateChanged gerekir. Bu işleyicide, geçerli hücre bir onay kutusu hücresiyse yöntemini çağırın DataGridView.CommitEdit ve değeri geçirin Commit .

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, 10

Ayrıca bkz.