iT邦幫忙

0

請問MessageBox.Show需要宣告嗎?

https://ithelp.ithome.com.tw/upload/images/20171026/20107022qVlbsEgf02.jpg問題一:請問MessageBox.Show需要宣告嗎?
因為我直接Key會出現錯誤訊息。
問題二:請問TextBox判斷輸入是否空白,需要如何撰寫程式,因為 TextBox不只一個,麻煩請協助,謝謝~

Winnie iT邦新手 5 級 ‧ 2017-10-26 17:23:01 檢舉
麻煩一下,謝謝~
丹尼 iT邦研究生 4 級 ‧ 2017-10-27 22:19:49 檢舉
不用阿

2 個回答

1
dog830228
iT邦研究生 3 級 ‧ 2017-10-26 17:13:36
最佳解答

問題一答案:
MessageBox.Show 不用特別宣告 因為他是[靜態方法]
有錯誤原因 我猜是少了命名空間 using System.Windows.Forms
但在aspx中 一般也不會使用MessageBox.Show

問題二答案:
可以使用 string.IsNullOrEmpty 方法來判斷TextBox.Text是否為空或NULL

看更多先前的回應...收起先前的回應...
Winnie iT邦新手 5 級 ‧ 2017-10-26 17:19:48 檢舉

https://ithelp.ithome.com.tw/upload/images/20171026/20107022oYfS9GdWSL.pnghttps://ithelp.ithome.com.tw/upload/images/20171026/20107022V0zS04x4ms.png

Winnie iT邦新手 5 級 ‧ 2017-10-26 17:20:18 檢舉

請問是這樣嗎~
但還是有錯誤訊息> <"""

dog830228 iT邦研究生 3 級 ‧ 2017-10-26 17:29:35 檢舉

第一點:
你需要在專案上加入參考

https://ithelp.ithome.com.tw/upload/images/20171026/20096630lya76Y7t7a.png

第二點:
IsNullOrEmpty 方法是吃String參數
所以要改成

if(!string.IsNullOrEmpty(TextBoxWorkOder.Text) && !string.IsNullOrEmpty(TextBoxManufactureDate.Text))
{
  //TextBoxWorkOder.Text和TextBoxManufactureDate.Text
  //不為空或NULL就執行
}

參考連結

Winnie iT邦新手 5 級 ‧ 2017-10-27 15:18:20 檢舉

請問我有用using System.Windows.Forms;
加入參考也勾選了,
但還是顯示錯誤,有可能是什麼原因~
麻煩一下,謝謝~
https://ithelp.ithome.com.tw/upload/images/20171027/20107022FniokFEvlR.png

dog830228 iT邦研究生 3 級 ‧ 2017-10-27 15:58:32 檢舉

因為MessageBox.Show是一個方法
你需要這樣使用
MessageBox.Show("請輸入正確的值")

Winnie iT邦新手 5 級 ‧ 2017-10-28 09:48:35 檢舉

/images/emoticon/emoticon41.gif

0
神Q超人
iT邦新手 2 級 ‧ 2017-10-26 16:58:26

第一個問題可以參考下面這篇文章:
http://gloria10074.pixnet.net/blog/post/49765434-%5Bc%23%5D%5Basp.net%5D%E5%9C%A8webform%E4%BD%BF%E7%94%A8messagebox%E8%A6%96%E7%AA%97
另外也可以使用直接上JavaScript的方式:
http://imagine-code.blogspot.tw/2013/07/aspnet-msgbox-5.html

第二個問題

前端控制項:

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

如果是在後端(aspx.cs)的話可以直接:


if(TextBox1.Text=="")
{
    //textbox1裡為空
}
else
{
    //textbox1裡有值
}

我剛剛看到關鍵字,在有多個TextBox的情況下要做驗證是否為空,可使用迴圈的方式:


//這邊下迴圈,把變數C的型態做為控制項,巡訪該頁所有的控制項
foreach (Control C in this.Controls)
{
    //這邊判斷控制項的類型,如果是textbox的話就進行判斷
    if (C is TextBox)
    {
        //因為剛剛的C只是控制項,還沒有任何型態,
        //所以我們用另一個型態為TextBox的變數「t」來裝TextBox型態的C
        TextBox t = C as TextBox;
        //判斷是否為空
        if(t.Text =="")
        {
            //該textbox為空值
        }
        else
        {
            //該textbox有值
        }
    }
}


以上 如果我有會錯意或搞錯方向再告知我^^

看更多先前的回應...收起先前的回應...
Winnie iT邦新手 5 級 ‧ 2017-10-26 17:16:40 檢舉

https://ithelp.ithome.com.tw/upload/images/20171026/20107022hHgo7uwJmB.pnghttps://ithelp.ithome.com.tw/upload/images/20171026/20107022GOUpRd8XhG.png

Winnie iT邦新手 5 級 ‧ 2017-10-26 17:17:39 檢舉

請問這些錯誤要如何改正~

string.IsNullOrEmpty()
這個判斷字串是否為NULL的函式括號裡面只能放一個字串哦!
因為他的參數只有一個,你可以打成

if(string.IsNullOrEmpty(TextBox1.Text) && string.IsNullOrEmpty(TextBox2.Text))
{
}
Winnie iT邦新手 5 級 ‧ 2017-10-26 17:29:03 檢舉

請問如果要判斷多個字串需要如何撰寫?

了解,謝謝

就像上面的方式就可以了^^

Winnie iT邦新手 5 級 ‧ 2017-10-26 17:33:16 檢舉

因為messagebox還是無法使用,
所以想請問還有什麼方式~

順便提一下
加入參考的方式只需要在右邊方案總管內點右鍵選擇「加入參考」或「加入」→「加入參考」,之後在視窗內查詢要參考的.dll確定就可以了^^

我習慣用寫入JavaScript標籤的方式,以下網頁有提供範例:
http://imagine-code.blogspot.tw/2013/07/aspnet-msgbox-5.html

Winnie iT邦新手 5 級 ‧ 2017-10-26 22:21:14 檢舉

謝謝~

不會哦 如果有問題可以再提出來討論:D

baida0630 iT邦新手 4 級 ‧ 2017-10-27 10:28:44 檢舉

..發了兩篇阿

Winnie iT邦新手 5 級 ‧ 2017-10-27 10:36:03 檢舉

對,不小心按到兩次~哈

我要發表回答

立即登入回答