一、从客户端搜索AsxpGridView数据1.数据过滤(1)调用AutoFilterByColumn()方法实现过滤。
语法1:void AutoFilterByColumn(ASPxClientGridViewColumn column, string val);
语法2:void AutoFilterByColumn(int columnIndex, string val);
语法3:void AutoFilterByColumn(string columnFieldNameOrId, string val);
该方法不会自动清除之前的过滤条件。
(2)调用ApplyFilter实现过滤。
语法:function ApplyFilter(filterExpression : String);
语法:
var filterExpr = document.getElementById("<%=txtFilterExpression.ClientID% >").value;
grid.ApplyFilter(filterExpr);
访方法会自动清除之前的过滤条件。
(3)调用ClearFilter清除过滤条件
语法:function ClearFilter();
二、从服务端搜索AsxpGridView数据1.数据过滤(1)调用AutoFilterByColumn()方法可以实现服务端数据过滤。
AutoFilterByColumn语法:void AutoFilterByColumn(GridViewColumn column,string value)
参数说明:
column:要过滤的栏位
value:要过滤的栏位值。可以使用通配符。
示例:数据过滤
protected void btnServerFilter_Click(object sender, EventArgs e)
{
string filterColumnName = this.ddlFilterColumNames.SelectedValue;
if (filterColumnName != null)
{
GridViewColumn col = this.ASPxGridView1.Columns[filterColumnName] as GridViewColumn;
this.ASPxGridView1.AutoFilterByColumn(col, this.txtFilterColumnValue.Text);
}
}
(2)通过设置过滤工具条让用户自行输入条件过滤数据
this.ASPxGridView1.Settings.ShowFilterBar = GridViewStatusBarMode.Visible;//过滤状态条模式
this.ASPxGridView1.Settings.ShowFilterRow = true;//是否过滤行
this.ASPxGridView1.Settings.ShowFilterRowMenu = true;//是否显示过滤菜单
this.ASPxGridView1.SettingsBehavior.AutoFilterRowInputDelay = 1000;//自动过滤时间间隔(单位:毫秒,默认值:1200)
(3)设置FilterExpression过滤表达式
这是最灵活的一种的方法,可以使用任何有效过滤表达式(包括值比较操作符、逻辑运算符)
例:
LogID > 23955 and Event like '%审核%'
2.数据搜索(1)FindVisibleIndexByKeyValue
语法:int FindVisibleIndexByKeyValue(object keyValue)
示例:
//搜索
protected void btnFindKeyValue_Click(object sender, EventArgs e)
{
string keyValue = this.txtFindKeyValue.Text;
int logID;
if (keyValue.Length > 0 && Int32.TryParse(keyValue,out logID))
{
int rowIndex = this.ASPxGridView1.FindVisibleIndexByKeyValue(logID);
if (rowIndex >= 0)
{
this.ASPxGridView1.Selection.UnselectAll();//取消所有行的选择
this.ASPxGridView1.Selection.SelectRow(rowIndex);//选中指定行
this.ASPxGridView1.FocusedRowIndex = rowIndex;
this.ASPxGridView1.MakeRowVisible(logID);
}
}
}