[英]Missing operand after '=' operator
我有這行代碼使用view_1
,我正在嘗試使用RowFilter
按product_name及其大小過濾datagridview。 這是代碼:
view_1.RowFilter = "product_name = '" + cboProduct.Text + "' AND size = " + cboSize.Text + "";
當我嘗試運行應用程序時,它會Missing operand after '=' operator
。 那么缺少操作數是什么?
你在
'AND
缺少空格
所以更換
'AND
同
AND size = '" + cboSize.Text + "'";
大小是字符串列還是int列? 如果它是一個字符串,你也需要引號:
AND size = '" + cboSize.Text + "'";
甚至更好,使用String.Format
因為其他人已經評論,因為它具有可讀性:
view_1.RowFilter = string.Format("product_name = '{0}' AND size = '{1}'" , cboProduct.Text , cboSize.Text);
寫這樣的
view_1.RowFilter = "product_name = '" + cboProduct.Text + "' AND size = " + cboSize.Text + "";
缺少白空間問題
編輯
您也可以使用string.Format
view_1.RowFilter = String.Format("product_name = '{0}' AND size = {1}", cboProduct.Text,cboSize.Text);
我不知cboProduct
什么問題,如果cboProduct
和cboSize
的文本是空的,或者如果沒有選擇,現在它正在工作,我首先嘗試過濾。 謝謝。 這是代碼
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 + "";
}
如果變量product_name
具有包含空格的值,則需要將值包裝在過濾器表達式的方括號中:因此,只需將變量product_name
包裝為方括號對,如[product_name]
view_1.RowFilter = "[product_name] = '" + cboProduct.Text + "' AND size = " +
cboSize.Text + "";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.