日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

c# Winform Control 快速入门基本事件

發布時間:2023/12/15 综合教程 16 生活家
生活随笔 收集整理的這篇文章主要介紹了 c# Winform Control 快速入门基本事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于桌面應用,歸類總結一下最常用的事件

一 鼠標移動事件

用戶行為:鼠標移入控件又移出控件

鼠標在控件外側,準備移入控件,無事件

移入控件邊界,接受到MouseEnter 事件

移入之后,接收到 MouseMove 事件,事件不停的發送,一旦cursor變換,發送 MouseHover 事件

鼠標在控件內部移動,不停的發送 MouseMove 事件

鼠標移出到控件邊界,發送 MouseLeave 事件

移出后無事件

二 鼠標點擊事件

用戶行為:在控件內部,點擊一下

在控件內部按下鼠標左鍵,MouseDown 事件

在控件內部任意位置,松開鼠標左鍵,先發 Click 再發 MosueClick 事件,然后發 MouseUp 事件

在控件外部位置,松開鼠標左鍵,只有 MouseUp 事件

PS:在同一位置,雙擊鼠標:

第一次點擊:MouseDown ->Click -> MouseClick ->MouseUp

第二次點擊:MouseDown ->DoubleClick -> MouseDoubleClick->MouseUp

三 鍵盤事件

用戶行為:在控件內部,按下鍵盤上的某個鍵,然后又松開

在鍵盤上按下A,不松開,事件順序 KeyDown -> KeyPress -> KeyDown -> KeyPress ... 如此循環下去

松開鍵盤上的A,發 KeyUp 事件

按下 Ctrl + A, 會有兩輪事件:

KeyDown(Ctrl) -> KeyDown(A) -> KeyPress -> KeyUp(A) -> KeyUp(Ctrl)

四 焦點事件

點擊文本框,光標開始在文本框內不停的閃爍,觸發一次 GotFocus 事件

在下面的任務欄上,點擊應用程序圖標,導致整個程序最小化LostFocus,再點擊一次圖標,又顯示出程序, GotFocus

點擊其他應用程序 LostFocus,再顯示GotFocus

五 拖拽事件

前提:TextBox AllowDrop 屬性需要設置成 true

把一個文件拖拽進入控件時,發生如下順序

剛拖入控件內部, DragEnter (這時候可以設置Cursor,方法是 e.Effect = DragDropEffects.Move;)

在控件內部移動,DragMove

最終再控件內部松開,DragDrop,在外部松開 DragLeave

六 校驗事件

點擊控件,控件得焦點,Enter -> GotFocus

此后最小化再顯示,點擊其他應用程序再點回來,只會觸發 LostFocus -> Focus

但是點擊當前應用上其他控件時,該控件,LostFocus ->Leave ->Validating ->Validated

注意,點擊的其他控件如果設置了CausesValidation = false; 就不會觸發Validating 和 Validated

Validating:

校驗開始之前,一般放校驗邏輯,可以設置 e.Cancel = false,使得

1.控件不能失去焦點,等待用戶更正了值,再次嘗試失去焦點,再次執行邏輯。

這個行為可以設置父容器的this.AutoValidate = System.Windows.Forms.AutoValidate.EnableAllowFocusChange

2. 這個時候默認不能關閉窗體,如果修改這個默認行為,需要這么做:

掛窗體 FormClosing 事件,加e.Cancel = false;

也不一定要 e.Cancel = false, 只是做一些UI上的提示,但是Winform會認為數據正確,并在數據綁定下,將值更新到數據庫里。

Validated:

校驗開始之后,一般放校驗通過后的UI處理。

總結

以上是生活随笔為你收集整理的c# Winform Control 快速入门基本事件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。