亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C# DialogResult用法案例詳解

 更新時間:2021年08月27日 10:03:58   作者:weixin_30419799  
這篇文章主要介紹了C# DialogResult用法案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

在程序中,經(jīng)常會彈出一個對話框來讓用戶填寫一些信息,填寫完成后,當(dāng)用戶點擊“確定”按鈕后,在主窗體中進(jìn)行其他的處理。比如一個簡單的例子,在主窗體中有一個菜單,是“增加用戶”,當(dāng)點擊這個菜單之后,我們需要彈出一個增加用戶的窗體出來,就假設(shè)“增加用戶”的窗體叫frmAddUser,那么代碼如下:

frmAddUser frm = new frmAddUser();
   if (frm.ShowDialog() == DialogResult.OK)   
   {
    //todo list
   } 

一般都是設(shè)置“增加用戶”窗體中“確定”按鈕的DialogResult的屬性,

clip_image002

      設(shè)置完成后,只要用戶一點擊“確定”按鈕,那么對話框就關(guān)閉,重新回到主窗體,然后可以在主窗體中進(jìn)行相應(yīng)的處理,比如把數(shù)據(jù)寫入數(shù)據(jù)庫等。

      現(xiàn)在有一個問題就是,“增加用戶”的窗體如下:

clip_image004

      如果我想判斷一下,用戶輸入的郵件格式是否正確,那么我該把這段代碼放在哪呢?如果放在郵件輸入框那個TextBox的TextChaged事件中,那么用戶輸入一個字母都會激發(fā)那個事件,這樣就不太好,如果放在“確定”按鈕的事件中,那么如果用戶的郵件格式輸入的不正確,就不應(yīng)該返回主窗體,而是繼續(xù)留在這個窗體上,等待用戶修改,可是事實卻不是這樣,因為你設(shè)置了“確定”按鈕的Dialogue屬性,只要用戶一點擊按鈕,主窗體中的

if (frm.ShowDialog() == DialogResult.OK)

這個判斷就為真,不管你的郵件格式是否正確,主窗體都會繼續(xù)向下執(zhí)行。

      最后,終于找到了一個比較好的解決辦法,都以為只有Button才有Diagolue屬性,沒想到窗體也有這個屬性。所以我們根本就不需要設(shè)置“確定”按鈕的Diagolue屬性,直接把判斷郵件是否合格的方法放在”確定”按鈕的點擊事件中,如果符合,那么就設(shè)置窗體的Diagolue屬性為OK,用下面的代碼:

this.DialogResult = DialogResult.OK;

這樣主窗體中的if (frm.ShowDialog() == DialogResult.OK)這個判斷也為真,它會繼續(xù)執(zhí)行下面的代碼。如果不符合格式,就啥也不做,因為沒有設(shè)置窗體的Diagolue屬性為OK,所以“增加用戶”的對話框永遠(yuǎn)不會關(guān)閉,主窗體也會一直等待,而不會去執(zhí)行其他的代碼。

     例子比較簡單,只是我原來不知道這些,所以在這里記錄一下。當(dāng)然這只是一種辦法,你也可以用其他的方法來解決類似這樣的問題。

到此這篇關(guān)于C# DialogResult用法案例詳解的文章就介紹到這了,更多相關(guān)C# DialogResult用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論