将网格行值与表行值进行比较 [英] compare grid row values with table row values
问题描述
我想比较网格视图行值和数据库值,例如ex。对于一个特定的id我在表中有四个记录如...
id name
1 A
1 B
1 C
1
im在网格视图中显示这些记录并显示。如果用户删除任何gridview行并尝试更新它,我想比较网格行值使用数据库值并找出用户已删除的值,并在更新数据库以进行进一步操作之前将该值保存在任何变量中。
我该怎么做?帮助我
< div>
< asp:gridview runat = server id = grdDetails autogeneratecolumns = true datakeynames = ID,name onrowdeleting = grdDetails_RowDeleting xmlns:asp = #unknown >
< columns>
< asp:templatefield>
< itemtemplate>
< asp:linkbutton id = lnkdel runat = server text = 删除 commandname = 删除 > < / asp:linkbutton >
< / itemtemplate >
< / asp:templatefield >
< / 列 < span class =code-keyword>>
< / asp:gridview >
< / div >
:::代码背后:::
protected void Page_Load( object sender,EventArgs e)
{
try
{
FillControls();
}
catch (例外情况)
{
}
}
private void FillControls()
{
尝试
{
DataTable dt = new DataTable();
dt.Columns.Add( ID, typeof ( int ));
dt.Columns.Add( name, typeof ( string ));
dt.Rows.Add( 1 , A跨度>);
dt.Rows.Add( 1 , B跨度>);
dt.Rows.Add( 1 , C跨度>);
dt.Rows.Add( 1 , d跨度>);
grdDetails.DataSource = dt;
grdDetails.DataBind();
}
catch (例外情况)
{
}
}
受保护 void grdDetails_RowDeleting( object sender,GridViewDeleteEventArgs e)
{
int id = int .Parse (grdDetails.DataKeys [e.RowIndex] .Values [ 0 ]。ToString());
string name = grdDetails.DataKeys [e.RowIndex] .Values [ 1 ]。ToString ();
}
您可以将ID和名称保留在列表中以供进一步使用。
I want to compare grid view row values with the database values like for ex. for a particular id i have four records in table like..
id name
1 A
1 B
1 C
1 D
i m fetching these records in grid view and displaying.If the user deletes any gridview row and tries to update it, i want to compare grid row values with database values and find out which value user has deleted and save that value in any variable before updating in database for further operations.
How can i do this?Help Me
<div> <asp:gridview runat="server" id="grdDetails" autogeneratecolumns="true" datakeynames="ID,name" onrowdeleting="grdDetails_RowDeleting" xmlns:asp="#unknown"> <columns> <asp:templatefield> <itemtemplate> <asp:linkbutton id="lnkdel" runat="server" text="Delete" commandname="Delete"></asp:linkbutton> </itemtemplate> </asp:templatefield> </columns> </asp:gridview> </div>
:::IN CODE BEHIND:::
protected void Page_Load(object sender, EventArgs e) { try { FillControls(); } catch (Exception ex) { } } private void FillControls() { try { DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(int)); dt.Columns.Add("name", typeof(string)); dt.Rows.Add(1, "A"); dt.Rows.Add(1, "B"); dt.Rows.Add(1, "C"); dt.Rows.Add(1, "D"); grdDetails.DataSource = dt; grdDetails.DataBind(); } catch (Exception ex) { } } protected void grdDetails_RowDeleting(object sender, GridViewDeleteEventArgs e) { int id = int.Parse(grdDetails.DataKeys[e.RowIndex].Values[0].ToString()); string name = grdDetails.DataKeys[e.RowIndex].Values[1].ToString(); }
you can keep both id and name in list for further use.
这篇关于将网格行值与表行值进行比较的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!