VS2003只有DATAGRID,没有GRIDVIEW
DataGrid
#列印
DataGrid-TemplateColumn 样板资料行
aspx
<asp:TemplateColumn HeaderText="列印"><HeaderStyle Wrap="False" HorizontalAlign="Center" Width="5%"></HeaderStyle><ItemTemplate><asp:ImageButton id="btnPrint" runat="server" ImageUrl="../images/Buttons/print.gif" CommandName="Print" > </asp:ImageButton></ItemTemplate></asp:TemplateColumn>
aspx.cs
private void MasterDG_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { if (e.CommandName != "Print") return; string sSignDate = e.Item.Cells[0].Text; string sUnit = e.Item.Cells[1].Text; string account = e.Item.Cells[2].Text; Print( sSignDate, sUnit, account); }
GirdView
注意事项
visible=fasle的话就不会bind,所以要先visible=true,bind完再设fasle
GridView1.Columns[0].Visible = true; GridView1.DataSource = source; GridView1.DataBind(); //如果在一开始就设的话,就不会拿到值.所以要先拿完再设. GridView1.Columns[0].Visible = false;
<asp:ButtonField buttontype="Image" HeaderText="列印" ImageUrl="../images/Buttons/print.gif" CommandName="Print" ><ItemStyle CssClass="TACenter" Width="5%" /> </asp:ButtonField>
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e){ int index = Convert.ToInt32(e.CommandArgument); GridView1.Rows[index].Cells[0].Text.ToString().Trim();}