我使用的是一个简单的复选框,在我的开发机器上一切正常,但最终用户正在
"无法执行' ='对System.String和System.Int32进行操作"。
我尝试使用相同的结果更改代码。我的机器运行的是Windows 8.1,最终用户运行的是Windows Server 2008 R2。
首先我尝试了这个:
if(checkBox1.Checked)
{
this.personnelBindingSource.Filter = ("License =" + arg);
}
接下来我尝试了这个,
string checkRelated = checkBox1.CheckState.ToString();
if(checkRelated.Equals("Unchecked"))
{
this.personnelBindingSource.Filter = ("License =" + arg);
}
我不明白为什么它甚至认为我正在使用' ='操作。有谁知道我为什么会收到这个错误?
编辑:我在代码中有这个。 InitializeComponent();
myArgLicense = "'" + myArgLicense + "'";
以上并非全局变化,所以我没有在我的复选框例程中解释范围。我把代码更改为Sachu的推荐它运行正常。
if(checkBox1.Checked)
{
this.personnelBindingSource.Filter = ("License =" + "'" + myArgLicense + "'");
}
答案 0 :(得分:0)
唯一可以解释为int32的是arg,所以我会尝试这个:
if(checkBox1.Checked)
{
this.personnelBindingSource.Filter = ("License ='" + arg.ToString() + "'");
}
编辑:我太迟见了Sachu的评论。