序号姓名单位|
1 aa tt |
2 bb yy |
3 cc uu |
4 dd ii |gridview
-----------------------
序号___ (textbox)
姓名___ (textbox)
单位___ (textbox)
button1→删除 button2→更新
选定一行后自动填充在下方的textbox中序号、姓名、单位中,点删除按钮后gridview就删除一行。(要有删除提示)
各位高手,前面我没写清楚。请各位赐教。
1 aa tt |
2 bb yy |
3 cc uu |
4 dd ii |gridview
-----------------------
序号___ (textbox)
姓名___ (textbox)
单位___ (textbox)
button1→删除 button2→更新
选定一行后自动填充在下方的textbox中序号、姓名、单位中,点删除按钮后gridview就删除一行。(要有删除提示)
各位高手,前面我没写清楚。请各位赐教。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="OrderID" HeaderText="OrderID" />
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="Department" HeaderText="Department" />
<asp:TemplateField HeaderText="Action">
<ItemTemplate >
<asp:LinkButton ID="btnSelect" runat="server" Text="Select" OnClick="btnSelect_Click"></asp:LinkButton>
<asp:LinkButton ID="btnDel" runat="server" Text="Delete" OnClick="btnDel_Click" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"OrderID") %>' OnClientClick="javascript:return window.Confirm('Are you sure to delete this record ?')"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<ul>
OrderID:
<asp:TextBox ID="txtOrder" runat="server"></asp:TextBox>
</ul>
<ul>
Name:
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
</ul>
<ul>
Department:<asp:TextBox ID="txtDepart" runat="server"></asp:TextBox>
</ul>
</div>
cs: private DataSet DataSource
{
get
{
DataRow dr=null;
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("OrderID", typeof(int)));
dt.Columns.Add(new DataColumn("Name", typeof(string)));
dt.Columns.Add(new DataColumn("Department", typeof(string)));
dr = dt.NewRow();
dr["OrderID"] = 1;
dr["Name"] = "James";
dr["Department"] = "ProjectM";
dt.Rows.Add(dr); dr["OrderID"] = 2;
dr["Name"] = "Lucy";
dr["Department"] = "IT";
dt.Rows.Add(dr);
ds.Tables.Add(dt);
return ds;
}
} protected void btnSelect_Click(object sender, EventArgs e)
{
//这里我是用的临时数据,你可以根据自己的数据源进行操作.
string id = ((LinkButton)sender).CommandArgument;
DataTable dt = DataSource.Tables[0];
dt.PrimaryKey = new DataColumn[] { dt.Columns["OrderID"] };
DataRow row = dt.Rows.Find(id);
if (row != null)
{
txtOrder.Text = row["OrderID"].ToString();
txtName.Text=row["Name"].ToString();
txtDepart.Text = row["Department"].ToString(); }
} protected void btnDel_Click(object sender, EventArgs e)
{
string id = ((LinkButton)sender).CommandArgument;
//拿到id后,自己构造Sql删除,并重新绑定GridView
}
在page_load里绑下就可以了.
aspx:
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="OrderID" HeaderText="OrderID" />
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="Department" HeaderText="Department" />
<asp:TemplateField HeaderText="Action">
<ItemTemplate >
<asp:LinkButton ID="btnSelect" runat="server" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"OrderID") %>' Text="Select" OnClick="btnSelect_Click"></asp:LinkButton>
<asp:LinkButton ID="btnDel" runat="server" Text="Delete" OnClick="btnDel_Click" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"OrderID") %>' OnClientClick="javascript:return window.confirm('Are you sure to delete this record ?')" ></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<ul>
OrderID:
<asp:TextBox ID="txtOrder" runat="server"></asp:TextBox>
</ul>
<ul>
Name:
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
</ul>
<ul>
Department:<asp:TextBox ID="txtDepart" runat="server"></asp:TextBox>
</ul>
</div>
cs: protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = DataSource;
GridView1.DataBind();
}
} private DataSet DataSource
{
get
{
DataRow dr=null;
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("OrderID", typeof(int)));
dt.Columns.Add(new DataColumn("Name", typeof(string)));
dt.Columns.Add(new DataColumn("Department", typeof(string)));
dr = dt.NewRow();
dr["OrderID"] = 1;
dr["Name"] = "James";
dr["Department"] = "ProjectM";
dt.Rows.Add(dr); dr = dt.NewRow();
dr["OrderID"] = 2;
dr["Name"] = "Lucy";
dr["Department"] = "IT";
dt.Rows.Add(dr);
ds.Tables.Add(dt);
return ds;
}
} protected void btnSelect_Click(object sender, EventArgs e)
{
//这里我是用的临时数据,你可以根据自己的数据源进行操作.
string id = ((LinkButton)sender).CommandArgument;
DataTable dt = DataSource.Tables[0];
dt.PrimaryKey = new DataColumn[] { dt.Columns["OrderID"] };
DataRow row = dt.Rows.Find(id);
if (row != null)
{
txtOrder.Text = row["OrderID"].ToString();
txtName.Text=row["Name"].ToString();
txtDepart.Text = row["Department"].ToString(); }
} protected void btnDel_Click(object sender, EventArgs e)
{
string id = ((LinkButton)sender).CommandArgument;
//拿到id后,自己构造Sql删除,并重新绑定GridView
}