原創(chuàng)|使用教程|編輯:郝浩|2013-03-12 10:45:45.000|閱讀 4580 次
概述:DevExpress ASP.NET MVC GridView控件的一個(gè)強(qiáng)大的過濾方法就是使用通配符"Like"操作符,本文將為你介紹使用通配符過濾時(shí)LIKE操作符的設(shè)置方法。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
DevExpress ASP.NET MVC GridView控件的一個(gè)強(qiáng)大的過濾方法就是使用通配符"Like"操作符:

1、首先,你需要將AutoFilterRow的‘Settings.ShowFilterRow’設(shè)置為‘true’。Header Filter(AutoFilterRow)允許您的最終用戶進(jìn)行單個(gè)列過濾。
2、然后,你需要將列設(shè)置為支持“Like”篩選條件。您可以將它設(shè)置為明確的列。默認(rèn)使用“Like”操作符。
3、如果您想讓最終用戶自己選擇,你可以啟用過濾器行菜單中的ShowFilterRowMenu屬性。還需要將GridViewDataColumnSettings.ShowFilterRowMenuLikeItem屬性設(shè)置為列。
下面這段代碼中,“Product Name”列的設(shè)置就使用了LIKE運(yùn)算符:
@Html.DevExpress().GridView(
    settings =>
    {
        settings.Name = "gvFilterRow";
        settings.CallbackRouteValues = new { Controller = "GridView", Action = "FilterRowPartial" };
        settings.Width = Unit.Percentage(100);
        settings.Columns.Add(column => {
            column.FieldName = "ProductName";
            column.Settings.AutoFilterCondition = AutoFilterCondition.Like;
        });
        settings.Columns.Add(column => {
            column.FieldName = "CategoryID";
            column.Caption = "Category";
            column.ColumnType = MVCxGridViewColumnType.ComboBox;
            var comboBoxProperties = column.PropertiesEdit as ComboBoxProperties;
            comboBoxProperties.DataSource = NorthwindDataProvider.GetCategories();
            comboBoxProperties.TextField = "CategoryName";
            comboBoxProperties.ValueField = "CategoryID";
            comboBoxProperties.ValueType = typeof(int);
            comboBoxProperties.DropDownStyle = DropDownStyle.DropDown;
        });
        settings.Columns.Add("QuantityPerUnit");
        settings.Columns.Add("UnitPrice").PropertiesEdit.DisplayFormatString = "c";
        settings.Columns.Add("ReorderLevel");
        settings.Columns.Add("Discontinued", MVCxGridViewColumnType.CheckBox);
        settings.Settings.ShowFilterRow = true;
        settings.Settings.ShowFilterRowMenu = true;
        settings.CommandColumn.Visible = true;
        settings.CommandColumn.ClearFilterButton.Visible = true;
    }).Bind(Model).GetHtml()
該功能為您的最終用戶提供了最強(qiáng)大的GridView過濾功能:

Like選項(xiàng)允許最終用戶創(chuàng)建通配符過濾器表達(dá)式:
Like菜單項(xiàng)的工具提示說明了哪些通配符是被支持的:
LIKE運(yùn)算符例子展示了一個(gè)特定的字符串是否符合指定的模式。
以下通配符是被支持的:
% 匹配零個(gè)和多個(gè)字符的字符串。例如:CriteriaOperator.Parse("Name like 'Jo%'") - 返回名稱以'JO'開頭的所有對象。
CriteriaOperator.Parse("Name like '%car%'") - 返回所有名稱中包含'car'字符串的對象。
_ 匹配一個(gè)字符。例如:CriteriaOperator.Parse("Name like 'car_'") - 返回所有名稱以'car'開頭并且為4個(gè)字符組成的對象。r
[ ]標(biāo)識(shí)指定的范圍內(nèi)的一個(gè)字符([a-c]) 或([abc])。例如:CriteriaOperator.Parse("Name like '[A-C]%'") - 返回所有名稱以'A'、 'B' 或 'C'開頭的對象。
[ ^ ] 不包括指定范圍內(nèi)的單個(gè)字符或字符串([^a-c]) 或 ([^abc])。例如:CriteriaOperator.Parse("Name like 're[^de]%'") - 返回所有名稱以 're'開頭并且下一個(gè)字母不是'd' 或'e'的對象。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)