关于后台取前台页面的业编号的方法:
前台未显示的页在后台是无法获取页面中的值的,所以使用grd.GetRowValuesByKeyValue(“编号”,“业编号”)只能获取显示在前台页面上的业编号,而无法获取未显示的其他页面的值,而要使用下列方法来获取:
protected void ASPxGridView1_AfterPerformCallback(object sender, ASPxGridViewAfterPerformCallbackEventArgs e)
{
//以下方法不要删:这是实现过滤联查的重要方法,备用
ASPxGridView grd = sender as ASPxGridView;
CriteriaOperator op = CriteriaOperator.Parse(grd.FilterExpression);
//下面一行代码非常关键:使用CriteriaToWhereClauseHelper工具类的GetDataSetWhere方法转换适用于DataTable的过滤语句,还有其他方法,对应于mssql、oracle等,可以选择使用
string gltj_str = CriteriaToWhereClauseHelper.GetDataSetWhere(op);
int int_grd_row_count = grd.VisibleRowCount;
if (int_grd_row_count > 0)
{
//整理主查表的数据源
if (!gltj_str.Contains("Null"))
{
if (gltj_str != "")
{
if (Convert.ToInt16(Session["current_grd"]) == 1)
{
DataTable temp_dt = zxsj_dt1.Select(gltj_str, "").CopyToDataTable();
zxsj_dt1 = temp_dt;
}
}
}
grd.DataSource = zxsj_dt1;
grd.DataBind();
}
else
{
//整理主查表的数据源
zxsj_dt1.Clear();
grd.DataSource = zxsj_dt1;
grd.DataBind();
}
}