Question

I have this line of code which uses a dataview view_1 and I'm trying to filter the datagridview by product_name and its size using the RowFilter. Here is the code:

view_1.RowFilter = "product_name = '" + cboProduct.Text + "' AND size = " + cboSize.Text + "";

And when I try to run the application it says Missing operand after '=' operator. So what is that missing operand?

Was it helpful?

Solution 3

I don't know what is wrong I tried to filter first if the text of cboProduct and cboSize is empty or if no selection has been made and now it's working. Thank you. Here is the code

if (cboProduct.Text == string.Empty || cboProduct.SelectedIndex == -1 || cboSize.Text == string.Empty || cboSize.SelectedIndex == -1)
            {
                view_1.RowFilter = string.Empty;
            }
            else
            {
                view_1.RowFilter = "product_name = '" + cboProduct.Text + "' AND size = " + cboSize.Text + "";
            }

OTHER TIPS

You have a missing white-space at 'AND

So replace

'AND 

with

' AND 

Is size a string-column or an int-column? If it's a string you need quotation marks around too:

AND size = '" + cboSize.Text + "'";

or even better, use String.Format as others have commented since it insreases readability:

view_1.RowFilter = string.Format("product_name = '{0}' AND size = '{1}'"
            , cboProduct.Text
            , cboSize.Text);

Write like this

view_1.RowFilter = "product_name = '" + cboProduct.Text + "' AND size = " + cboSize.Text + "";

Missing White space problem

Edit

You can also use string.Format

view_1.RowFilter =  String.Format("product_name = '{0}' AND size = {1}", cboProduct.Text,cboSize.Text);  

If the variable product_name is having a value that contains a space then the value needs to be wrapped in square brackets in the filter expression: So,just wrap the variable product_name by pair of square brackets like this [product_name]

view_1.RowFilter = "[product_name] = '" + cboProduct.Text + "' AND size = " + 
cboSize.Text + "";
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top