La colonne de modèle CheckBox dans le contrôle asp.net GridView sélectionne, inverse et annule tout

高洛峰
Libérer: 2017-01-11 10:21:07
original
2696 Les gens l'ont consulté

using System; 
using System.Data; 
using System.Data.SqlClient; 
using System.Configuration; 
using System.Collections; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 

public partial class Demo18 : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 
if (Page.IsPostBack == false) 
{ 
BindData(); 
} 
} 

public void BindData() 
{ 
string strSql = "select UserID,C_Name,E_Name,UpdataDate,isDY from Demo_User "; 
DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.CONN_STRING, CommandType.Text, strSql, null).Tables[0]; 

GridView.DataSource = dt; 
GridView.DataKeyNames = new string[] { "UserID" };//主键 
GridView.DataBind(); 
} 

protected void GridView_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
GridView.PageIndex = e.NewPageIndex; 
BindData(); 
} 

protected void Button1_Click(object sender, EventArgs e) 
{ 
CheckBoxAll.Checked = false; 
CheckBox1.Checked = false; 
for (int i = 0; i <= GridView.Rows.Count - 1; i++) 
{ 
CheckBox CheckBox = (CheckBox)GridView.Rows[i].FindControl("CheckBox"); 
CheckBox.Checked = false; 
} 

} 

protected void Button2_Click(object sender, EventArgs e) 
{ 
for (int i = 0; i <= GridView.Rows.Count - 1; i++) 
{ 
CheckBox CheckBox = (CheckBox)GridView.Rows[i].FindControl("CheckBox"); 
if (CheckBox.Checked == true) 
{ 
string strSql = "Update Demo_User set UpdataDate=@UpdataDate where UserID=@UserID "; 
SqlParameter[] para = { 
new SqlParameter("@UpdataDate", DateTime.Now), 
new SqlParameter("@UserID", GridView.DataKeys[i].Value), 
}; 
SqlHelper.ExecuteNonQuery(SqlHelper.CONN_STRING, CommandType.Text, strSql, para); 
} 
} 
CheckBoxAll.Checked = false; 
CheckBox1.Checked = false; 
BindData(); 

} 

protected void CheckBoxAll_CheckedChanged(object sender, EventArgs e) 
{ 
for (int i = 0; i <= GridView.Rows.Count - 1; i++) 
{ 
CheckBox CheckBox = (CheckBox)GridView.Rows[i].FindControl("CheckBox"); 
if (CheckBoxAll.Checked == true) 
{ 
CheckBox.Checked = true; 
} 
else 
{ 
CheckBox.Checked = false; 
} 
} 
CheckBox1.Checked = false; 

} 

protected void CheckBox1_CheckedChanged(object sender, EventArgs e) 
{ 
for (int i = 0; i <= GridView.Rows.Count - 1; i++) 
{ 
CheckBox CheckBox = (CheckBox)GridView.Rows[i].FindControl("CheckBox"); 
if (CheckBox.Checked == false) 
{ 
CheckBox.Checked = true; 
} 
else 
{ 
CheckBox.Checked = false; 
} 
} 
CheckBoxAll.Checked = false; 
} 
} 

<table align="center" bgcolor="#c0de98" border="0" cellpadding="0" cellspacing="1" width="99%"> 
<tr> 
<th colspan="2"> 
GridView演示</th> 
</tr> 
<tr> 
<td colspan="2" style="width: 100%;" > 
<asp:GridView ID="GridView" runat="server" Width="100%" AutoGenerateColumns="False" AllowPaging="True" OnPageIndexChanging="GridView_PageIndexChanging" PageSize="12" > 
<Columns> 
<asp:TemplateField HeaderText="选择"> 
<ItemTemplate> 
<asp:CheckBox ID="CheckBox" runat="server" /> 
</ItemTemplate> 
</asp:TemplateField> 
<asp:BoundField DataField="UserID" HeaderText="UserID" ReadOnly="True" /> 
<asp:BoundField DataField="C_Name" HeaderText="中文名字" ReadOnly="True" /> 
<asp:BoundField DataField="E_Name" HeaderText="英文名字" ReadOnly="True" /> 
<asp:BoundField DataField="UpdataDate" HeaderText="更新时间" /> 
</Columns> 
<RowStyle HorizontalAlign="Center" /> 
<PagerStyle HorizontalAlign="Right" /> 
</asp:GridView> 
</td> 
</tr> 

<tr> 
<td > 
<asp:CheckBox ID="CheckBoxAll" runat="server" Text="全选" Width="80px" AutoPostBack="True" OnCheckedChanged="CheckBoxAll_CheckedChanged" /> 
<asp:CheckBox ID="CheckBox1" runat="server" Text="反选" Width="80px" AutoPostBack="True" OnCheckedChanged="CheckBox1_CheckedChanged" /> 
<asp:Button ID="Button1" runat="server" Text="取 消" CssClass="Button" OnClick="Button1_Click"/> 
<asp:Button ID="Button2" runat="server" Text="更新时间" CssClass="Button" OnClick="Button2_Click"/></td> 
</tr> 
</table>
Copier après la connexion

asp.net GridView控件中模板列CheckBox全选、反选、取消

Pour plus d'articles sur la sélection de tout, l'inversion de la sélection et l'annulation de la colonne de modèle CheckBox dans le contrôle asp.net GridView, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!