cuối cùng tôi giải quyết nó:
Trong Visual Studio, tạo ra một ContextMenuStrip với một mục gọi là "DeleteRow"
Sau đó tại liên kết DataGridView các ContextMenuStrip
Sử dụng mã dưới đây đã giúp tôi làm việc.
this.MyDataGridView.MouseDown += new System.Windows.Forms.MouseEventHandler(this.MyDataGridView_MouseDown);
this.DeleteRow.Click += new System.EventHandler(this.DeleteRow_Click);
Dưới đây là phần mát mẻ
private void MyDataGridView_MouseDown(object sender, MouseEventArgs e)
{
if(e.Button == MouseButtons.Right)
{
var hti = MyDataGridView.HitTest(e.X, e.Y);
MyDataGridView.ClearSelection();
MyDataGridView.Rows[hti.RowIndex].Selected = true;
}
}
private void DeleteRow_Click(object sender, EventArgs e)
{
Int32 rowToDelete = MyDataGridView.Rows.GetFirstRow(DataGridViewElementStates.Selected);
MyDataGridView.Rows.RemoveAt(rowToDelete);
MyDataGridView.ClearSelection();
}
Tôi hy vọng các mã sẽ giúp đỡ người khác :-)
tôi hoan nghênh bất kỳ sự điều chỉnh nếu có một lỗi.
Nguồn
2010-06-14 07:10:05
Câu hỏi của bạn là quá mơ hồ. Thêm các chi tiết khác mà bạn gặp sự cố. Những gì bạn đang cố gắng làm, không phải là rất khó khăn. – leppie