将文本框文本转换为整数
我需要将我的xaml代码的文本框中的文本转换为C#中的整数值。 我正在使用.NET 4.0和Visual Studio 2010.有没有办法在xaml标签本身或者我需要在C sharp中编写转换器。 我尝试了以下但是没有工作:
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."); }
您注意到的exception意味着您没有在存储过程的调用中包含该值。 尝试在调用构建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事件探查器以检查正在发送/执行的SQL语句。
您不需要编写转换器,只需在处理程序/代码隐藏中执行此操作:
int i = Convert.ToInt32(txtMyTextBox.Text);
要么
int i = int.Parse(txtMyTextBox.Text);
Text
框的Text
属性是String
类型,因此您必须在代码中执行转换。
例:
int x = Convert.ToInt32(this.txtboxname.Text) + 1 //You dont need the "this" txtboxname.Text = x.ToString();
“x.ToString”将整数转换为字符串以在文本框中显示。
结果:
- 您将数字放在文本框中
- 您单击按钮或运行该function的东西。
- 您在文本框中看到的数字比您在一个数字中的数字大。
🙂
int num = int.Parse(textBox.Text);
试试这个。 它对我有用
如果您的SQL数据库允许该字段的Null值,请尝试使用int? value
int? value
:
if (this.txtboxname.Text == "" || this.txtboxname.text == null) value = null; else value = Convert.ToInt32(this.txtboxname.Text);
注意null值的Convert.ToInt32返回0!
Convert.ToInt32(null) returns 0