2015-04-22 83 views
0

我有一個保存按鈕,它抓取信息並將它存儲在Winform的SQL中。 我遇到的問題是,如果您單擊保存按鈕,它仍將空白信息存儲在數據庫中。我不想要這個。這是我的代碼。請記住,實際的保存,更新和獲取數據是完美的。在C#Winfoms中停止按鈕點擊功能

 private void btnSave_Click(object sender, EventArgs e) 
    { 
     if (txtLocalSourcePath.Text != null) 
     { 
      if (ResourceKey == 0) 
      { 
       ConnString = ConfigurationManager.ConnectionStrings["Dev"].ConnectionString; 
       GetData(ConnString); 
       InsertData(ConnString); 
       GetData(ConnString); 
       lblInsertNewRecord.Visible = true; 
       lblInsertNewRecord.Text = String.Format("You have inserted a new record at {0}", System.DateTime.Now); 
      } 
      else 
      { 
       UpdateData(); 
       GetData(ConnString); 
       lblInsertNewRecord.Visible = true; 
       lblInsertNewRecord.Text = String.Format("Updated Record at {0}", System.DateTime.Now); 
      } 
      ClearData(); 
     } 
     else 
     { 
      lblInsertNewRecord.Visible = true; 
      lblInsertNewRecord.Text = "Cannot add record. Please select file."; 
     } 
    } 

我嘗試了這些選項: stopping a function executed on a winform button click How to cancel any event in winforms? How to cancel winform button click event?

+0

您可能想嘗試'if(txtLocalSourcePath.Text!= null && txtLocalSourcePath.Text.Length> 0)'(編輯:固定'.Length'到'.Text.Length') –

+0

好的,讓我試試看。感謝您的快速響應 –

+0

我不能這樣做.Length是因爲它是DevExpress.XtraEditors.ButtonEdit –

回答

3

你可能想嘗試if (txtLocalSourcePath.Text != null && txtLocalSourcePath.Text.Length > 0),或錘提出的解決方案:

if (!string.IsNullOrEmpty(txtLocalSourcePath.Text))

.Text屬性不是其實null,但只是一個空白("")字符串。

編輯:Russ Wilson在評論中的建議也很方便:if (!string.IsNullOrWhiteSpace(txtLocalSourcePath.Text)),它保證字符串不只是空格/製表符等。

+0

完美!再次感謝您的快速響應! –

+0

@KevinFischer馬克請解決,以便將其排出隊列。 :) –

+0

嘗試。我必須等待2分鐘 –