<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Page Language="C#" Debug="true" %><script language="C#" runat="server">
SqlConnection myConnection = new SqlConnection("server=localhost;uid=sa;pwd=12345j;database=tr");protected void Page_Load(Object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
BindDataGrid();
}
}public void BindDataGrid()
{
  //String id=Request.QueryString["id"].ToString();  
    String selectCmd = "select  * from tr  ";
SqlDataAdapter myCommand = new SqlDataAdapter(selectCmd, myConnection);
    DataSet ds = new DataSet();
    myCommand.Fill(ds, "tr");
    MyDataGrid.DataSource=ds.Tables["tr"].DefaultView;
    MyDataGrid.DataBind();}public void DoItemEdit(Object objSource, DataGridCommandEventArgs objArgs)
{
MyDataGrid.EditItemIndex=objArgs.Item.ItemIndex;
BindDataGrid();
}public void DoItemCancel(Object objSource, DataGridCommandEventArgs objArgs)
{
MyDataGrid.EditItemIndex=-1;
BindDataGrid();
}public void DoItemUpdate(Object objSource, DataGridCommandEventArgs objArgs)
{
String id=Request.QueryString["id"].ToString();  
        String name=Request.Form["name"].ToString();    
             Response.Write (name);
             
            String updateCmd = "update tr set name='"+Request.Form["name"]+"',addr='"+Request.Form["addr"]+"' where id='"+id+"' ";  
      SqlCommand myCommand = new SqlCommand(updateCmd,myConnection);
            myCommand.Connection.Open();
          
             try
             {
             
             myCommand.ExecuteNonQuery();
             //Message.InnerHtml = "<b>修改成功!</b>";
             //Message.Style["color"] = "red";
             }
             catch (SqlException e1)
             {
                //if (e1.Number == 2627)
                //Message.InnerHtml = "错误:所修改的身份证编号和数据库里其它编号重复!!!";
                //Message.Style["color"] = "red";
             }
             myCommand.Connection.Close();
 }       </script><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><form runat="server">
<asp:DataGrid ID="MyDataGrid" Runat="server"
   AllowPaging="True"
                   PageSize="15"
                   PagerStyle-Mode="NumericPages"
                   PagerStyle-HorizontalAlign="Right"
                           
                   BackColor="#ffffff"
                   BorderColor="black"
                   ShowFooter="false"
                   BorderWidth="1"
                   GridLines="Both"
                   CellPadding="3"
                   CellSpacing="0"
                   width="100%" 
                   height="10"
                   Font-Name="Verdana"
                   Font-Size="10pt"
                   HeaderStyle-BackColor="#aaaadd"
                   AlternatingItemStyle-BackColor="#E8E8F0"
                   AutoGenerateColumns="false"
                   DataKeyField="id"
                   OnUpdateCommand="DoItemUpdate"
                   OnEditCommand="DoItemEdit"
                   OnCancelCommand="DoItemCancel"             >
             <Columns>
              <asp:BoundColumn HeaderText="id"
                   ItemStyle-Width="13%"
                  ItemStyle-horizontalalign="Center"
headerstyle-horizontalalign="Center" 
DataField="id"
ReadOnly="True" 
 />
 
<asp:TemplateColumn HeaderText="Name">
<ItemTemplate>
<asp:Label Text='<%# DataBinder.Eval(Container.DataItem, "Name") %>' runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="txtName" Size="60" Text='<%# DataBinder.Eval(Container.DataItem, "Name") %>' runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>

  <asp:BoundColumn HeaderText="addr"
                   ItemStyle-Width="10%"
                   ItemStyle-horizontalalign="Center"
headerstyle-horizontalalign="Center" 
DataField="addr" />

<asp:EditCommandColumn EditText="Edit" UpdateText="Update" CancelText="Cancel" />

</Columns>
</asp:DataGrid></form>
</html>