C# GridView中的行编辑不起作用
我试图将GridView中的记录模式更改为“编辑模式”,即当用户单击GridView中的编辑按钮编辑特定记录时 我使用以下代码:C# GridView中的行编辑不起作用,c#,asp.net,gridview,C#,Asp.net,Gridview,我试图将GridView中的记录模式更改为“编辑模式”,即当用户单击GridView中的编辑按钮编辑特定记录时 我使用以下代码: protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; SqlConnection con = new SqlConnec
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
SqlConnection con = new SqlConnection("Data Source=MEHDI-PC\\SQLEXPRESS;Initial Catalog=PIMS;Integrated Security=True");
string sql = "select [DwgRegID],[Ref],[Dwg_Ref],[Title],[Dwg_Received_Date],[Rev],[Trade],[Type],[Produced_Date],[Produced_By],[Submittal_Ref],[Issued_To],[Date_Issued],[Purpose],[Status],[Action_Date] from dbo.Dwg_Register where [DwgRegID]=N'" + GridView1.Rows[e.NewEditIndex].Cells[1].Text + "'";
con.Open();
SqlDataAdapter adp = new SqlDataAdapter(sql, con);
DataSet ds = new DataSet();
adp.Fill(ds);
if (con != null)
{
con.Close();
}
GridView1.DataSource = ds;
GridView1.DataBind();
但它不起作用。程序只是将我从EDITRECORD视图抛出到home视图
Gridview结构(.aspx)如下所示:
GridView结构部分为:
<asp:GridView ID="GridView1" runat="server" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" CellPadding="4" ForeColor="#333333" GridLines="None" OnRowEditing="GridView1_RowEditing" DataKeyNames="DwgRegID" OnRowUpdating="GridView1_RowUpdating" OnRowDeleting="GridView1_RowDeleting" OnRowCancelingEdit="GridView1_RowCancelingEdit" OnRowUpdated="GridView1_RowUpdated" >
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<EditRowStyle BackColor="#999999" />
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<SortedAscendingCellStyle BackColor="#E9E7E2" />
<SortedAscendingHeaderStyle BackColor="#506C8C" />
<SortedDescendingCellStyle BackColor="#FFFDF8" />
<SortedDescendingHeaderStyle BackColor="#6F8DAE" />
</asp:GridView>
请帮忙
将EditIndex属性设置为适当的行,然后将GridView重新绑定到其数据源 这是密码
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
BindGrid();
}
您可以阅读更多“编辑记录视图到主视图”这是什么意思?请发布gridview结构(aspx部分)@TimSchmelter:我有两个视图(ViewHome、ViewGrid)。主视图包含具有不同选项的按钮,如“插入记录”、“编辑记录”、“更新记录”等。ViewGrid上有GridView。因此,当用户单击“主视图”上的“编辑记录”时,程序会将用户带到“视图网格”(ViewGrid)。希望您能理解。@Md.ParvezAlam:Gridview结构部分太长,无法粘贴到此处。。有没有其他的粘贴方法?嘿,我想你没有提供数据源,你能检查一下我的代码,告诉我哪里出错了吗?因为我无法理解你的解决方案。谢谢。@Microtechie:您的解决方案出现以下错误:索引超出范围。必须是非负数且小于集合的大小。请检查,我已修改了我的答案。请尝试让我知道
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
///////////GridView1.Datasource = datasource; // here you missing
GridView1.DataBind();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
DataBind();
}