cs代码
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CheckUser();
}
DataBound(); //这一行放到IsPostBack中时全选可以,分页不可,放在此行的话全选不可,分页可以。
} private void DataBound()
{
SMReceiveBLL smreceivebll = new SMReceiveBLL();
DataSet ds = smreceivebll.GetList("");
dxGrid.DataSource = ds.Tables[0];
dxGrid.DataBind();
} protected void selectAll_CheckedChanged(object sender, EventArgs e)
{
int startid = dxGrid.PageIndex * dxGrid.SettingsPager.PageSize;
int endid; if (dxGrid.PageIndex == dxGrid.PageCount - 1)
{
endid = dxGrid.VisibleRowCount;
}
else
{
endid = (dxGrid.PageIndex + 1) * dxGrid.SettingsPager.PageSize;
} CheckBox cbHead = (CheckBox)sender;
if (cbHead.Checked == true)
{
CheckBox cb;
for (int i = startid; i < endid; i++)
{
cb = (CheckBox)dxGrid.FindRowCellTemplateControl(i, (GridViewDataColumn)dxGrid.Columns["cbxselectAll"], "cbxSelect");
cb.Checked = true;
}
}
else
{
CheckBox cb;
for (int i = startid; i < endid; i++)
{
cb = (CheckBox)dxGrid.FindRowCellTemplateControl(i, (GridViewDataColumn)dxGrid.Columns["cbxselectAll"], "cbxSelect");
cb.Checked = false;
}
}
}
前台代码
<dx:ASPxGridView ID="dxGrid" runat="server" AutoGenerateColumns="False" Width="100%" KeyFieldName="SMReceiveId">
<Columns>
<dx:GridViewDataTextColumn VisibleIndex="0">
<DataItemTemplate>
<asp:CheckBox ID="cbxSelect" runat="server" Width="5%"/>
<asp:TextBox ID="txtSMSendId" runat="server" Text='<%# Eval("SMReceiveId") %>' Visible="false"></asp:TextBox>
</DataItemTemplate>
<HeaderTemplate>
<asp:CheckBox ID="cbxselectAll" runat="server" AutoPostBack="True" oncheckedchanged="selectAll_CheckedChanged" />
</HeaderTemplate>
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="序号" VisibleIndex="0" Width="5%" >
<DataItemTemplate>
<%#Container.ItemIndex +1%>
</DataItemTemplate>
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn caption="发送号码" FieldName="SendNum" VisibleIndex="1" Width="10%"/>
<dx:GridViewDataTextColumn caption="短信内容" FieldName="SMContent" VisibleIndex="3" Width="40%"/>
<dx:GridViewDataTextColumn caption="接收时间" FieldName="SMReceiveTime" VisibleIndex="4" Width="15%"/>
<dx:GridViewDataTextColumn caption="接收状态" FieldName="SMReceiveStatus" VisibleIndex="5" Width="15%"/>
<dx:GridViewDataTextColumn caption="客户端接收时间" FieldName="ReadTime" VisibleIndex="5" Width="15%"/>
</Columns>
<SettingsBehavior AllowFocusedRow="True" />
<Settings ShowVerticalScrollBar="True" VerticalScrollableHeight="300" ShowHorizontalScrollBar="True" />
<Styles>
<AlternatingRow BackColor="#FFFFCC">
</AlternatingRow>
<FocusedRow BackColor="#3399FF">
</FocusedRow>
</Styles>
</dx:ASPxGridView>
可有方法解决呢,似乎有冲突
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CheckUser();
}
DataBound(); //这一行放到IsPostBack中时全选可以,分页不可,放在此行的话全选不可,分页可以。
} private void DataBound()
{
SMReceiveBLL smreceivebll = new SMReceiveBLL();
DataSet ds = smreceivebll.GetList("");
dxGrid.DataSource = ds.Tables[0];
dxGrid.DataBind();
} protected void selectAll_CheckedChanged(object sender, EventArgs e)
{
int startid = dxGrid.PageIndex * dxGrid.SettingsPager.PageSize;
int endid; if (dxGrid.PageIndex == dxGrid.PageCount - 1)
{
endid = dxGrid.VisibleRowCount;
}
else
{
endid = (dxGrid.PageIndex + 1) * dxGrid.SettingsPager.PageSize;
} CheckBox cbHead = (CheckBox)sender;
if (cbHead.Checked == true)
{
CheckBox cb;
for (int i = startid; i < endid; i++)
{
cb = (CheckBox)dxGrid.FindRowCellTemplateControl(i, (GridViewDataColumn)dxGrid.Columns["cbxselectAll"], "cbxSelect");
cb.Checked = true;
}
}
else
{
CheckBox cb;
for (int i = startid; i < endid; i++)
{
cb = (CheckBox)dxGrid.FindRowCellTemplateControl(i, (GridViewDataColumn)dxGrid.Columns["cbxselectAll"], "cbxSelect");
cb.Checked = false;
}
}
}
前台代码
<dx:ASPxGridView ID="dxGrid" runat="server" AutoGenerateColumns="False" Width="100%" KeyFieldName="SMReceiveId">
<Columns>
<dx:GridViewDataTextColumn VisibleIndex="0">
<DataItemTemplate>
<asp:CheckBox ID="cbxSelect" runat="server" Width="5%"/>
<asp:TextBox ID="txtSMSendId" runat="server" Text='<%# Eval("SMReceiveId") %>' Visible="false"></asp:TextBox>
</DataItemTemplate>
<HeaderTemplate>
<asp:CheckBox ID="cbxselectAll" runat="server" AutoPostBack="True" oncheckedchanged="selectAll_CheckedChanged" />
</HeaderTemplate>
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="序号" VisibleIndex="0" Width="5%" >
<DataItemTemplate>
<%#Container.ItemIndex +1%>
</DataItemTemplate>
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn caption="发送号码" FieldName="SendNum" VisibleIndex="1" Width="10%"/>
<dx:GridViewDataTextColumn caption="短信内容" FieldName="SMContent" VisibleIndex="3" Width="40%"/>
<dx:GridViewDataTextColumn caption="接收时间" FieldName="SMReceiveTime" VisibleIndex="4" Width="15%"/>
<dx:GridViewDataTextColumn caption="接收状态" FieldName="SMReceiveStatus" VisibleIndex="5" Width="15%"/>
<dx:GridViewDataTextColumn caption="客户端接收时间" FieldName="ReadTime" VisibleIndex="5" Width="15%"/>
</Columns>
<SettingsBehavior AllowFocusedRow="True" />
<Settings ShowVerticalScrollBar="True" VerticalScrollableHeight="300" ShowHorizontalScrollBar="True" />
<Styles>
<AlternatingRow BackColor="#FFFFCC">
</AlternatingRow>
<FocusedRow BackColor="#3399FF">
</FocusedRow>
</Styles>
</dx:ASPxGridView>
可有方法解决呢,似乎有冲突
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货