Rõ ràng không có cách nào để mà chỉ bằng cách thiết lập các thuộc tính trong của DataGridView. Vì vậy, bạn có thể sử dụng Timer để đếm nếu có bất kỳ nhấp chuột đôi, nếu không chỉ làm bất cứ điều gì bạn làm trong xử lý sự kiện một cú nhấn chuột yous, kiểm tra mã:
System.Windows.Forms.Timer t;
public Form1()
{
InitializeComponent();
t = new System.Windows.Forms.Timer();
t.Interval = SystemInformation.DoubleClickTime - 1;
t.Tick += new EventHandler(t_Tick);
}
void t_Tick(object sender, EventArgs e)
{
t.Stop();
DataGridViewCellEventArgs dgvcea = (DataGridViewCellEventArgs)t.Tag;
MessageBox.Show("Single");
//do whatever you do in single click
}
private void dataGridView1_CellClick_1(object sender, DataGridViewCellEventArgs e)
{
t.Tag = e;
t.Start();
}
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
t.Stop();
MessageBox.Show("Double");
//do whatever you do in double click
}
Nguồn
2012-11-19 13:16:25
Tôi không biết cách sử dụng nhưng tôi nghĩ rằng nó có thể được giải quyết bằng cách sử dụng 'hook' và' unhook'. hoặc else 'Timer'. –
Vui lòng tham khảo liên kết này. http://stackoverflow.com/questions/4252735/double-click-to-windows-form-in-c-sharp Hy vọng điều này hepls :) –