DataGridViewRowContextMenuStripNeededEventHandler Temsilci
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
bir olayını DataGridViewişleyecek RowContextMenuStripNeeded yöntemi temsil eder.
public delegate void DataGridViewRowContextMenuStripNeededEventHandler(System::Object ^ sender, DataGridViewRowContextMenuStripNeededEventArgs ^ e);
public delegate void DataGridViewRowContextMenuStripNeededEventHandler(object sender, DataGridViewRowContextMenuStripNeededEventArgs e);
public delegate void DataGridViewRowContextMenuStripNeededEventHandler(object? sender, DataGridViewRowContextMenuStripNeededEventArgs e);
type DataGridViewRowContextMenuStripNeededEventHandler = delegate of obj * DataGridViewRowContextMenuStripNeededEventArgs -> unit
Public Delegate Sub DataGridViewRowContextMenuStripNeededEventHandler(sender As Object, e As DataGridViewRowContextMenuStripNeededEventArgs)
Parametreler
- sender
- Object
Olayın kaynağı.
DataGridViewRowContextMenuStripNeededEventArgs Olay verilerini içeren bir.
Örnekler
Aşağıdaki kod örneğinde olay, çalışanın RowContextMenuStripNeeded unvanını temel alan bir ContextMenuStrip sağlamak için işlenir. Bu örnekte, biri yöneticiler, diğeri diğer tüm çalışanlar için iki bağlam menüsü vardır.
void dataGridView1_RowContextMenuStripNeeded(object sender,
DataGridViewRowContextMenuStripNeededEventArgs e)
{
DataGridViewRow dataGridViewRow1 = dataGridView1.Rows[e.RowIndex];
toolStripMenuItem1.Enabled = true;
// Show the appropriate ContextMenuStrip based on the employees title.
if ((dataGridViewRow1.Cells["Title"].Value.ToString() ==
"Sales Manager") ||
(dataGridViewRow1.Cells["Title"].Value.ToString() ==
"Vice President, Sales"))
{
e.ContextMenuStrip = managerMenuStrip;
}
else
{
e.ContextMenuStrip = employeeMenuStrip;
}
contextMenuRowIndex = e.RowIndex;
}
Public Sub dataGridView1_RowContextMenuStripNeeded( _
ByVal sender As Object, _
ByVal e As DataGridViewRowContextMenuStripNeededEventArgs) _
Handles dataGridView1.RowContextMenuStripNeeded
Dim dataGridViewRow1 As DataGridViewRow = _
dataGridView1.Rows(e.RowIndex)
toolStripMenuItem1.Enabled = True
' Show the appropriate ContextMenuStrip based on the employees title.
If dataGridViewRow1.Cells("Title").Value.ToString() = _
"Sales Manager" OrElse _
dataGridViewRow1.Cells("Title").Value.ToString() = _
"Vice President, Sales" Then
e.ContextMenuStrip = managerMenuStrip
Else
e.ContextMenuStrip = employeeMenuStrip
End If
contextMenuRowIndex = e.RowIndex
End Sub
Açıklamalar
Olay RowContextMenuStripNeeded yalnızca DataGridView denetim DataSource özelliği ayarlandığında veya VirtualMode özelliği olduğunda true
gerçekleşir. Olayın işlenmesi, satırın RowContextMenuStripNeeded geçerli durumuna veya içerdiği değerlere göre belirlenen bir kısayol menüsü görüntülemek istediğinizde yararlıdır.
Olayı işlediğinizde RowContextMenuStripNeeded , kullanıcı tıklanan hücrenin kısayol menüsünü geçersiz kılmadığı sürece, kullanıcı bir satıra sağ tıkladığında CellContextMenuStripNeeded işleyicide belirttiğiniz kısayol menüsü gösterilir.
Olay RowContextMenuStripNeeded , özelliğin DataGridViewRow.ContextMenuStrip değeri program aracılığıyla veya kullanıcı bir satıra sağ tıkladığında da gerçekleşir.
Bir satırın DataGridViewRowContextMenuStripNeededEventArgs.RowIndex veya içerdiği değerlerin durumunu belirlemek için özelliğini kullanabilir ve özelliği değiştirmek veya değiştirmek için bu bilgileri kullanabilirsiniz DataGridViewRowContextMenuStripNeededEventArgs.ContextMenuStrip . Bu özellik, olay değerinin geçersiz kıldığı satır ContextMenuStrip özelliğinin değeriyle başlatılır.
RowContextMenuStripNeeded Birden çok satır için satır ContextMenuStrip değerini ayarlamanın performans cezalarını önlemek için büyük miktarda veriyle çalışırken olayı işleyin. Daha fazla bilgi için bkz. Windows Forms DataGridView Denetimini Ölçeklendirmeye Yönelik En İyi Yöntemler.
Olayları işleme hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.
Bir DataGridViewRowContextMenuStripNeededEventHandler temsilci oluşturduğunuzda, olayı işleyecek yöntemi tanımlarsınız. Olayı olay işleyicinizle ilişkilendirmek için olaya temsilcinin bir örneğini ekleyin. Olay her gerçekleştiğinde, olay işleyici (siz temsilciyi kaldırmadığınız sürece) çağrılır. Olay işleyici temsilcileri hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.
Uzantı Metotları
GetMethodInfo(Delegate) |
Belirtilen temsilci tarafından temsil edilen yöntemi temsil eden bir nesnesi alır. |