当使用复选框时,我得到无法执行' =' System.String和System.Int32上的操作

时间:2015-05-16 15:55:41

标签: c#

我使用的是一个简单的复选框,在我的开发机器上一切正常,但最终用户正在

  

"无法执行' ='对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 + "'"); 
        }

1 个答案:

答案 0 :(得分:0)

唯一可以解释为int32的是arg,所以我会尝试这个:

if(checkBox1.Checked)
{
    this.personnelBindingSource.Filter = ("License ='" + arg.ToString() + "'"); 
}
编辑:我太迟见了Sachu的评论。