[英]listview column header double click event
如果要管理沒有雙擊事件的控件,則可以使用時間戳來計算兩次單擊之間的時間差。 喜歡 :
DateTime lastClickDate = DateTime.Now;
private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)
{
//You can change the value 1200 as you want.
if ((DateTime.Now - lastClickDate).TotalMilliseconds < 1200)
{
MessageBox.Show("double clicked");
}
this.Text = (DateTime.Now - lastClickDate).TotalMilliseconds.ToString();
lastClickDate = DateTime.Now;
}
除了前面的答案,我建議添加鼠標指針的位置。 Cursor.Position
將在這方面有所幫助。
DateTime lastClickDate = DateTime.Now;
int xPosition = Cursor.Position.X;
int yPosition = Cursor.Position.Y;
private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)
{
//You can change the value 1200 as you want.
if ((DateTime.Now - lastClickDate).TotalMilliseconds < 1200)
{
//Just for example I have given as equals it is better to allow
//some variation since mouse may be moved a little during clicks
if(Cursor.Position.X==xPosition && Cursor.Position.Y==yPosition)
{
MessageBox.Show("double clicked");
}
}
this.Text = (DateTime.Now - lastClickDate).TotalMilliseconds.ToString();
lastClickDate = DateTime.Now;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.