最近在做张工给我的三个模块,分别是计量单位维护,车型维护以及物资类别维护,三个界面的共同点就是每个界面都会涉及到datagrid,以及相应的分页等有关的事项,虽然项目的结构简单,但是业务逻辑不是那么容易。
1. 在aspx页面的编写:
<asp:AdvGridView ID="gdvList" runat="server" CssClass="QueryList" HeaderStyle-CssClass="QueryTop"
AddSequenceColumn="true" SequenceColumnIndex="0" >
<Columns>
<asp:BoundField HeaderText="序号" ItemStyle-CssClass="tcTdCenterNoWrap"></asp:BoundField>
<asp:BoundField DataField="SFILE_FORMER_NAME" HeaderText="档案名称" ItemStyle-CssClass="tcTdLeftNoWrap" />
<asp:TemplateField HeaderText="档案类型" SortExpression="SFILE_TYPE" HeaderStyle-CssClass="tcTdCenterNoWrap" ItemStyle-CssClass="tcTdCenterNoWrap" ItemStyle-Width="80px">
<ItemTemplate>
<%# StrSfileType(Eval("SFILE_TYPE").ToString())%>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="DUPLOAD_DATE" HeaderText="上传时间" ItemStyle-CssClass="tcTdCenterNoWrap" />
<asp:BoundField DataField="SMAKER_NAME" HeaderText="上传人" ItemStyle-CssClass="tcTdCenterNoWrap" />
</Columns>
</asp:AdvGridView>
2. 在aspx.cs页面的调用:
/// <summary>
/// 加载列表
/// </summary>
private void bindPage(string orderName, string orderDire)
{
#region 组织查询条件,并赋值到Model
int ncmid = GetIntValue("Nid");
ModelRmpcsContractFiles fileModel = new ModelRmpcsContractFiles();
fileModel.NcmId = ncmid;
#endregion
PagerAndSortInfo pagerInfo = new PagerAndSortInfo();
//分页信息
if (!string.IsNullOrEmpty(orderName) && !string.IsNullOrEmpty(orderDire))
{
pagerInfo.OrderName = orderName;
pagerInfo.OrderDire = orderDire;
}
else
{
pagerInfo.OrderName = "SFN_SEQ";
pagerInfo.OrderDire = "ASC";
}
pagerInfo.CurrentPageIndex = 0;
pagerInfo.PageSize = 0;
DataTable dt = _RmpcsContractFilesBLL.GetListDt(fileModel, pagerInfo); //根据查询条件,返回数据集(Datatable,Ilist)
//把分页大小和当前页索引传递给控件类
gdvList.DefaultSortName = orderName;
gdvList.DefaultSortOrder = orderDire;
gdvlist.PageSize = gdvPager.PageSize;
gdvlist.PageIndex = gdvPager.CurrentPageIndex; //如果设置自增列,此处必须有;
gdvList.DataSource = dt;
gdvList.DataBind();
//执行JS方法
string[] parm = { this.gdvList.ClientID };
ExecuteFunction("GridViewColor", parm);
}
注意
:执行JS方法GridViewColor时,如果参数只传列表控件ID 即 parm = { this.gdvList.ClientID },则列表加载时无鼠标选中事件;如果参数为:parm = { this.gdvlist.ClientID,"" },则列表加载时加载鼠标选中时的颜色,同时加载鼠标选中事件。