SmartGridView
1.//页面上可以只有SmartGridView,无SmartSqlDataSource,这样数据就是通过我们自己给SmartGridView绑定数据,加上AllowPaging="True"之后,就可以有分页功能了。
<web:SmartGridView ID="SmartGridView1" runat="server" AutoGenerateColumns="False"
class="dg_borderstyle" AllowPaging="true" Width="100%" DataKeyNames="MsgID" AllowSorting="true">
<HeaderStyle CssClass="dg_headerstyle" />
<RowStyle CssClass="dg_itemstyle" />
<AlternatingRowStyle CssClass="dg_alternatingitemstyle" />
<Columns>
<asp:TemplateField SortExpression="MsgContent" HeaderText="消息内容" ItemStyle-HorizontalAlign="Left"
HeaderStyle-Width="300px">
<ItemTemplate>
<a _id='<%# Eval("MsgID") %>>' _href='<%# Eval("Href_url")%>' _createuser='<%# Eval("CreateUserName")%>'
_sendtime='<%# Eval("SendTime")%>' _content='<%# Eval("MsgContent")%>' style="cursor: pointer;">
<%# Eval("MsgContent").ToString().Length > 40 ? Eval("MsgContent").ToString().Substring(0, 40).Trim() + "..." : Eval("MsgContent").ToString().Trim()%>
</a>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CreateUserName" HeaderText="发起人" SortExpression="CreateUserName"
ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="100px" />
<asp:BoundField DataField="CreateDeptName" HeaderText="所属部门名称" SortExpression="CreateDeptName"
ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="100px" />
<%-- <asp:BoundField DataField="MsgTitle" HeaderText="消息标题" SortExpression="MsgTitle"
ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="100px" />--%>
<%-- <asp:TemplateField SortExpression="MsgType" HeaderText="消息类型" ItemStyle-HorizontalAlign="Left" HeaderStyle-Width="40px">
<ItemTemplate>
<%# Eval("Href_Url") != null ? "链接类型" : "普通类型"%>
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField SortExpression="SendTime" HeaderText="发送时间" ItemStyle-HorizontalAlign="Center"
HeaderStyle-Width="120px">
<ItemTemplate>
<%# Convert.ToDateTime(Eval("SendTime")).ToString("yyyy-MM-dd HH:mm")%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField SortExpression="Status" HeaderText="状态" ItemStyle-HorizontalAlign="Center"
HeaderStyle-Width="40px">
<ItemTemplate>
<%# Eval("Status").ToString() == "0" ?"未读":"已读"%>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<EditRowStyle HorizontalAlign="Center" /> //这里定义编辑行样式居中
<EmptyDataTemplate> //这里定义列表数据为空时的自定义显示内容
<div style="margin: 5px auto; text-align: center;">
数据为空!</div>
</EmptyDataTemplate>
</web:SmartGridView>
public partial class InternalMsgList : System.Web.UI.Page
{
Msg_InternalMsgBLL msgBLL = new Msg_InternalMsgBLL();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
private void BindConsultPage(object sender, EventArgs e)
{
BindData();
}
// 绑定数据
private void BindData()
{
string currUserId = SecurityContext.User.Id.ToUpper();
this.SmartGridView1.DataSource = msgBLL.GetListByWS(currUserId).list;
this.SmartGridView1.DataBind();
}
protected void btnSearch_Click(object sender, EventArgs e)
{
BindData();
}
}
2.如果想要去掉分页功能,在分页处加统计功能时,就要重新定义了PagerTemplate属性,替换了原来的分页
<web:SmartGridView ID="gvList" runat="server" AllowPaging="True" AllowSorting="True" PageSize="200" //这里的PageSize需要设的大一点,因为这里默认是10条
AutoGenerateColumns="False" EnableModelValidation="True" ClientIDMode="Static"
DataSourceID="SmartDataSource1">
<FixRowColumnSettings MarginLeft="" MarginRight=""></FixRowColumnSettings>
<Columns>
<web:DataDictonaryBoundField DictionaryCode="WorkOrder" DataField="Code" HeaderText="处理类型"
ItemStyle-HorizontalAlign="Center" SortExpression="Code" />
<asp:TemplateField HeaderText="已处理" SortExpression="Processed">
<ItemStyle HorizontalAlign="Center" CssClass="ProcessedCount" />
<ItemTemplate>
<%# Convert.ToInt32(Eval("Processed"))%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="处理中" SortExpression="">
<ItemStyle HorizontalAlign="Center" CssClass="UnderwayCount" />
<ItemTemplate>
<%# Convert.ToInt32(Eval("Underway"))%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="总处理数" SortExpression="">
<ItemStyle HorizontalAlign="Center" CssClass="SupCount" />
<ItemTemplate>
<%# Convert.ToInt32(Eval("Processed")) + Convert.ToInt32(Eval("Underway"))%>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<PagerTemplate> // 这里是重新定义了PagerTemplate属性,替换了原来的分页
<tr class="dg_itemstyle_s">
<td class="td_total">
合计
</td>
<td id="ProcessingSum" class="td_count">
0
</td>
<td id="TimeoutingSum" class="td_count">
0
</td>
<td id="ProcessedSum" class="td_count">
0
</td>
</tr>
</PagerTemplate>
</web:SmartGridView>

浙公网安备 33010602011771号