//
查詢按鈕
protected void btnQue_Click( object sender, EventArgs e)
{
this .tableInfo.Visible = true ;
SqlConnection sqlconn = new SqlConnection( " server=localhost;database=db;uid=uid;pwd=pwd; " );
sqlconn.Open();
SqlDataAdapter sda = new SqlDataAdapter( " select * from table " , sqlconn);
DataSet ds = new DataSet();
sda.Fill(ds);
this .grvInfo.DataSource = ds;
this .grvInfo.DataBind();
sda.Dispose();
ds.Dispose();
sqlconn.Close();
}
[全選]按鈕:
// 全選
protected void btnAllCh_Click( object sender, EventArgs e)
{
foreach (GridViewRow currow in grvInfo.Rows)
{
((CheckBox)currow.Cells[ 0 ].Controls[ 1 ]).Checked = true ;
}
}
類似的[取消全選]的編碼為:
// 取消全選
protected void btnNoCh_Click( object sender, EventArgs e)
{
foreach (GridViewRow currow in grvInfo.Rows)
{
((CheckBox)currow.Cells[ 0 ].Controls[ 1 ]).Checked = false ;
}
}
[明細]按鈕:
該按鈕的操作,要寫在GridView ROW按鈕事件 --- RowCommand
// GridView ROW按鈕事件 RowCommand
protected void grvInfo_RowCommand( object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals( " mingxin " ))
{
ImageButton lb = (ImageButton)e.CommandSource;
GridViewRow curgvr = (GridViewRow)lb.Parent.Parent;
string paraValue = curgvr.Cells[ 2 ].Text.ToString();
// RegisterClientScriptBlock("openmingxin", "<script language='javascript'>window.open(src='mingxin.aspx?pihao="+ paraValue+"','newwindow','');</script>");
ClientScript.RegisterClientScriptBlock( this .GetType(), " aa " , " <script language='javascript'>alert( " + paraValue + " ');</script> " );
}
}
[刪除]按鈕:
可以在HTML原始檔中加上
< asp:BoundField HeaderText = " 審核 " />
< asp:TemplateField HeaderText = " 刪除 " >
< ItemStyle HorizontalAlign = " Center " />
< ItemTemplate >
< asp:ImageButton runat = " server " ImageUrl = " ~/image/del.JPG " ID = " delid " CommandName = " del " OnClientClick = " return confirm('確實要刪除嗎?'); " />
</ ItemTemplate >
</ asp:TemplateField >
同時也可以如[明細]按鈕在GridView ROW按鈕事件 --- RowCommand 對[刪除]點擊按鈕的事件進行服務器端處理 !
============================
GridView中 样板列 加入 按钮
============================
前台:
< asp:GridView ID = " GridView1 " runat = " server " AutoGenerateColumns = " False " OnRowCommand = " GridView1_RowCommand " OnSelectedIndexChanged = " GridView1_SelectedIndexChanged " >
< Columns >
< asp:BoundField DataField = " personName " />
< asp:BoundField DataField = " personAge " />
< asp:TemplateField HeaderText = " 操作 " >
< ItemTemplate >
< asp:Button ID = " btn_OK " runat = " server " Text = " 确定 "
CommandArgument = ' <%# Eval("personName") %> ' CommandName = " btn_OK " />
< asp:Button ID = " btn_Cancel " runat = " server " Text = " 取消 " CommandName = " btn_Cancel "
CommandArgument = ' <%# Eval("personName") %> ' />
</ ItemTemplate >
</ asp:TemplateField >
</ Columns >
</ asp:GridView >
后台:
protected void GridView1_RowCommand( object sender, GridViewCommandEventArgs e)
{
// 直接利用参数
string strName = e.CommandArgument.ToString();
// 一种取得当前行的方法
GridViewRow currRow = (GridViewRow)((Button)e.CommandSource).Parent.Parent;
string strAge = currRow.Cells[ 1 ].Text.ToString();
if (e.CommandName == " btn_OK " )
{
this .TextBox1.Text = " 确定按钮 " + strName + " " + strAge;
}
if (e.CommandName == " btn_Cancel " )
{
this .TextBox1.Text = " 取消按钮 " + strName + " " + strAge;
}
}
============================
GridView的CommandField列的 编辑 更新 取消
============================
页面部分:
< asp:GridView ID = " GridView1 " runat = " server " AutoGenerateColumns = " False "
OnRowEditing = " GridView1_RowEditing "
OnRowUpdating = " GridView1_RowUpdating "
OnRowCancelingEdit = " GridView1_RowCancelingEdit " >
< Columns >
< asp:TemplateField >
< HeaderTemplate >
姓名
</ HeaderTemplate >
< EditItemTemplate >
< asp:TextBox runat = " server " ID = " txtName " Text = ' <%# Bind("colName") %> ' ></ asp:TextBox >
</ EditItemTemplate >
< ItemTemplate >
< asp:Label runat = " server " ID = " lblName " Text = ' <%# Bind("colName") %> ' ></ asp:Label >
</ ItemTemplate >
</ asp:TemplateField >
< asp:CommandField ButtonType = " Button " ShowEditButton = " True " />
</ Columns >
</ asp:GridView >
后台部分:
需要对上面OnRowEditing / OnRowUpdating事件进行相关代码编写
protected void GridView1_RowEditing( object sender, GridViewEditEventArgs e)
{
this .GridView1.EditIndex = e.NewEditIndex;
BindData();
}
protected void GridView1_RowUpdating( object sender, GridViewUpdateEventArgs e)
{
// 取得当前的编辑值 以便进行保存
string strName = "" ;
strName = ((TextBox) this .GridView1.Rows[e.RowIndex].FindControl( " txtName " )).Text.Trim();
// 相关保存
// 重新绑定显示
this .GridView1.EditIndex = - 1 ;
BindData();
}
protected void btnQue_Click( object sender, EventArgs e)
{
this .tableInfo.Visible = true ;
SqlConnection sqlconn = new SqlConnection( " server=localhost;database=db;uid=uid;pwd=pwd; " );
sqlconn.Open();
SqlDataAdapter sda = new SqlDataAdapter( " select * from table " , sqlconn);
DataSet ds = new DataSet();
sda.Fill(ds);
this .grvInfo.DataSource = ds;
this .grvInfo.DataBind();
sda.Dispose();
ds.Dispose();
sqlconn.Close();
}
[全選]按鈕:
// 全選
protected void btnAllCh_Click( object sender, EventArgs e)
{
foreach (GridViewRow currow in grvInfo.Rows)
{
((CheckBox)currow.Cells[ 0 ].Controls[ 1 ]).Checked = true ;
}
}
類似的[取消全選]的編碼為:
// 取消全選
protected void btnNoCh_Click( object sender, EventArgs e)
{
foreach (GridViewRow currow in grvInfo.Rows)
{
((CheckBox)currow.Cells[ 0 ].Controls[ 1 ]).Checked = false ;
}
}
[明細]按鈕:
該按鈕的操作,要寫在GridView ROW按鈕事件 --- RowCommand
// GridView ROW按鈕事件 RowCommand
protected void grvInfo_RowCommand( object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals( " mingxin " ))
{
ImageButton lb = (ImageButton)e.CommandSource;
GridViewRow curgvr = (GridViewRow)lb.Parent.Parent;
string paraValue = curgvr.Cells[ 2 ].Text.ToString();
// RegisterClientScriptBlock("openmingxin", "<script language='javascript'>window.open(src='mingxin.aspx?pihao="+ paraValue+"','newwindow','');</script>");
ClientScript.RegisterClientScriptBlock( this .GetType(), " aa " , " <script language='javascript'>alert( " + paraValue + " ');</script> " );
}
}
[刪除]按鈕:
可以在HTML原始檔中加上
< asp:BoundField HeaderText = " 審核 " />
< asp:TemplateField HeaderText = " 刪除 " >
< ItemStyle HorizontalAlign = " Center " />
< ItemTemplate >
< asp:ImageButton runat = " server " ImageUrl = " ~/image/del.JPG " ID = " delid " CommandName = " del " OnClientClick = " return confirm('確實要刪除嗎?'); " />
</ ItemTemplate >
</ asp:TemplateField >
同時也可以如[明細]按鈕在GridView ROW按鈕事件 --- RowCommand 對[刪除]點擊按鈕的事件進行服務器端處理 !
============================
GridView中 样板列 加入 按钮
============================
前台:
< asp:GridView ID = " GridView1 " runat = " server " AutoGenerateColumns = " False " OnRowCommand = " GridView1_RowCommand " OnSelectedIndexChanged = " GridView1_SelectedIndexChanged " >
< Columns >
< asp:BoundField DataField = " personName " />
< asp:BoundField DataField = " personAge " />
< asp:TemplateField HeaderText = " 操作 " >
< ItemTemplate >
< asp:Button ID = " btn_OK " runat = " server " Text = " 确定 "
CommandArgument = ' <%# Eval("personName") %> ' CommandName = " btn_OK " />
< asp:Button ID = " btn_Cancel " runat = " server " Text = " 取消 " CommandName = " btn_Cancel "
CommandArgument = ' <%# Eval("personName") %> ' />
</ ItemTemplate >
</ asp:TemplateField >
</ Columns >
</ asp:GridView >
后台:
protected void GridView1_RowCommand( object sender, GridViewCommandEventArgs e)
{
// 直接利用参数
string strName = e.CommandArgument.ToString();
// 一种取得当前行的方法
GridViewRow currRow = (GridViewRow)((Button)e.CommandSource).Parent.Parent;
string strAge = currRow.Cells[ 1 ].Text.ToString();
if (e.CommandName == " btn_OK " )
{
this .TextBox1.Text = " 确定按钮 " + strName + " " + strAge;
}
if (e.CommandName == " btn_Cancel " )
{
this .TextBox1.Text = " 取消按钮 " + strName + " " + strAge;
}
}
============================
GridView的CommandField列的 编辑 更新 取消
============================
页面部分:
< asp:GridView ID = " GridView1 " runat = " server " AutoGenerateColumns = " False "
OnRowEditing = " GridView1_RowEditing "
OnRowUpdating = " GridView1_RowUpdating "
OnRowCancelingEdit = " GridView1_RowCancelingEdit " >
< Columns >
< asp:TemplateField >
< HeaderTemplate >
姓名
</ HeaderTemplate >
< EditItemTemplate >
< asp:TextBox runat = " server " ID = " txtName " Text = ' <%# Bind("colName") %> ' ></ asp:TextBox >
</ EditItemTemplate >
< ItemTemplate >
< asp:Label runat = " server " ID = " lblName " Text = ' <%# Bind("colName") %> ' ></ asp:Label >
</ ItemTemplate >
</ asp:TemplateField >
< asp:CommandField ButtonType = " Button " ShowEditButton = " True " />
</ Columns >
</ asp:GridView >
后台部分:
需要对上面OnRowEditing / OnRowUpdating事件进行相关代码编写
protected void GridView1_RowEditing( object sender, GridViewEditEventArgs e)
{
this .GridView1.EditIndex = e.NewEditIndex;
BindData();
}
protected void GridView1_RowUpdating( object sender, GridViewUpdateEventArgs e)
{
// 取得当前的编辑值 以便进行保存
string strName = "" ;
strName = ((TextBox) this .GridView1.Rows[e.RowIndex].FindControl( " txtName " )).Text.Trim();
// 相关保存
// 重新绑定显示
this .GridView1.EditIndex = - 1 ;
BindData();
}