簡體   English   中英

將文本框文本轉換為整數

[英]Convert textbox text to integer

我需要將我的 xaml 代碼文本框中的文本轉換為 C# 中的整數值。 我正在使用 .NET 4.0 和 Visual Studio 2010。有沒有辦法在 xaml 標簽本身中做到這一點,或者我是否需要用 C 語言編寫轉換器。 我嘗試了以下但不起作用:

Convert.ToInt32(this.txtboxname.Text)

任何幫助深表感謝。 謝謝。

建議在發送到 SQL Server 之前在代碼隱藏中執行此操作。

 int userVal = int.Parse(txtboxname.Text);

也許嘗試解析並選擇性地讓用戶知道。

int? userVal;
if (int.TryParse(txtboxname.Text, out userVal) 
{
  DoSomething(userVal.Value);
}
else
{ MessageBox.Show("Hey, we need an int over here.");   }

您注意到的異常意味着您沒有在對存儲過程的調用中包含該值。 在調用生成 SQL Server 調用的代碼時,嘗試在代碼中設置調試器斷點。

確保您實際將參數附加到 SqlCommand。

using (SqlConnection conn = new SqlConnection(connString))
{
    SqlCommand cmd = new SqlCommand(sql, conn);
    cmd.Parameters.Add("@ParamName", SqlDbType.Int);
    cmd.Parameters["@ParamName"].Value = newName;        
    conn.Open();
    string someReturn = (string)cmd.ExecuteScalar();        
}

也許在您的數據庫上啟動 SQL Profiler 以檢查正在發送/執行的 SQL 語句。

您不需要編寫轉換器,只需在您的處理程序/代碼隱藏中執行此操作:

int i = Convert.ToInt32(txtMyTextBox.Text);

或者

int i = int.Parse(txtMyTextBox.Text);

您的文本框的Text屬性是String類型,因此您必須在代碼中執行轉換。

例子:

int x = Convert.ToInt32(this.txtboxname.Text) + 1 //You dont need the "this"
txtboxname.Text = x.ToString();

x.ToString()將整數轉換為字符串以在文本框中顯示。

結果:

  1. 您在文本框中輸入數字。
  2. 您單擊按鈕或運行該功能的東西。
  3. 您會在文本框中看到您的數字比您的數字大一。

:)

如果您的 SQL 數據庫允許該字段的 Null 值,請嘗試使用int? value 像這樣的int? value

if (this.txtboxname.Text == "" || this.txtboxname.text == null)
     value = null;
else
     value = Convert.ToInt32(this.txtboxname.Text);

注意空值的 Convert.ToInt32 返回 0 !

Convert.ToInt32(null) returns 0
int num = int.Parse(textBox.Text);

嘗試這個。 它對我有用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM