0
我有我的窗口窗体应用程序中的datagridview事件cellclick和celldoubleclick。 问题是,当我双击,只有cellclick事件触发器,因为它不能确定,如果它的单击或双击。单元双击事件未运行。只有Cellclick事件得到执行
我搜索了这个,发现定时器可能是解决方案..但如何做到这一点? plz help
我有我的窗口窗体应用程序中的datagridview事件cellclick和celldoubleclick。 问题是,当我双击,只有cellclick事件触发器,因为它不能确定,如果它的单击或双击。单元双击事件未运行。只有Cellclick事件得到执行
我搜索了这个,发现定时器可能是解决方案..但如何做到这一点? plz help
您可能应该试着找出为什么双击不会被解雇。回答你的问题:你确实需要一个定时器,其间隔时间设置为双击时间:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
timer1.Interval = SystemInformation.DoubleClickTime;
timer1.Tick += delegate { timer1.Enabled = false; };
}
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) {
if (timer1.Enabled) {
timer1.Enabled = false;
// Do double-click stuff
//...
}
else {
timer1.Enabled = true;
// Do single-click stuff
//...
}
}
}
你是否证实双击事件是通过临时删除点击处理程序触发的? – ChrisF 2010-06-22 12:41:33
是的,我已经证实 – sajad 2010-06-22 12:44:29