我收到以下错误消息:No overload for method 'TryParse' takes 1 arguments
if (int.TryParse(driverNo.Text))
。这是什么意思?我知道如何解决它?
private void driverNo_TextChanged(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(driverNo.Text))
{
((DataTable)dataGridView1.DataSource).DefaultView.RowFilter = string.Empty;
return;
}
int temp;
if (int.TryParse(driverNo.Text))
((DataTable)dataGridView1.DataSource).DefaultView.RowFilter = "DriverNo = " + driverNo.Text;
else
MessageBox.Show("Invalid driver no.");
}
答案 0 :(得分:4)
您需要将temp
变量传递给int.TryParse
更改
if (int.TryParse(driverNo.Text))
要
if (int.TryParse(driverNo.Text, out temp)) //since temp is defined just for it (I guess(
int.TryParse
至少有两个参数,一个是要解析的字符串,另一个是用out
关键字保存已解析的值。您尚未在代码中提供该内容。
成功解析后,您将在temp
变量中获得已解析的值。
答案 1 :(得分:3)
您无法使用int.TryParse(driverNo.Text)
使用如下。
int newValue;
if(int.TryParse(driverNo.Text, out newValue))
{
}