且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

将网格行值与表行值进行比较

更新时间:2023-01-21 11:13:30

< 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 >
< / >
< / 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.