Hallo zusammen,
ich habe mit den Artikel von P. Lorenz angeschaut, und danach auch im ASP.Net Kochbuch gesehen das man im Datagrid die Zeilen verändern kann, jedoch funtzt das beispiel bei mir nicht und ich habe echt keine ahnung warum nicht?
hier der Code von mir:
<pre>
public void UpdateNav(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
TextBox tb_Titel = (TextBox) e.Item.Cells[1].Controls[0];
TextBox tb_BannerPicture = (TextBox) e.Item.Cells[2].Controls[0];
TextBox tb_nOrder = (TextBox) e.Item.Cells[3].Controls[0];
TextBox tb_isVisible = (TextBox) e.Item.Cells[4].Controls[0];
int ID = (int) DataGrid1.DataKeys[e.Item.ItemIndex];
OleDbConnection conn = new
OleDbConnection(System.Configuration.Configuration Settings.AppSettings["oleDbConnection1.ConnectionString"]);
conn.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = conn;
cmd.Parameters.Add("@navTitel", tb_Titel.Text);
cmd.Parameters.Add("@navBanner", tb_BannerPicture.Text);
cmd.Parameters.Add("@navOrder", Convert.ToInt32(tb_nOrder.Text));
cmd.Parameters.Add("@navVis", Convert.ToBoolean(tb_isVisible.Text));
cmd.Parameters.Add("@iID", ID);
cmd.CommandText = "UPDATE tblNavigation SET tblNavigation.Titel = @navTitel, tblNavigation.BannerPicture = @navBanner, tblNavigation.nOrder = @navOrder, tblNavigation.isVisible = @navVis WHERE (((tblNavigation.Navigation_ID)=@iID) AND ((tblNavigation.isTopNavigation)=-1));";
cmd.ExecuteNonQuery();
conn.Close();
DataGrid1.EditItemIndex = -1;
UpdateDataSource();
}
</pre>
Hat einer eventuell eine Ahnung was ich hier falsch mache? Das Problem ist wenn ich die Textboxen ausgebe nach dem Update, bekomme ich die Datenbank werte raus, aber nicht die werte die ich neu eingegeben habe?
Grüsschen Andreas
ich habe mit den Artikel von P. Lorenz angeschaut, und danach auch im ASP.Net Kochbuch gesehen das man im Datagrid die Zeilen verändern kann, jedoch funtzt das beispiel bei mir nicht und ich habe echt keine ahnung warum nicht?
hier der Code von mir:
<pre>
public void UpdateNav(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
TextBox tb_Titel = (TextBox) e.Item.Cells[1].Controls[0];
TextBox tb_BannerPicture = (TextBox) e.Item.Cells[2].Controls[0];
TextBox tb_nOrder = (TextBox) e.Item.Cells[3].Controls[0];
TextBox tb_isVisible = (TextBox) e.Item.Cells[4].Controls[0];
int ID = (int) DataGrid1.DataKeys[e.Item.ItemIndex];
OleDbConnection conn = new
OleDbConnection(System.Configuration.Configuration Settings.AppSettings["oleDbConnection1.ConnectionString"]);
conn.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = conn;
cmd.Parameters.Add("@navTitel", tb_Titel.Text);
cmd.Parameters.Add("@navBanner", tb_BannerPicture.Text);
cmd.Parameters.Add("@navOrder", Convert.ToInt32(tb_nOrder.Text));
cmd.Parameters.Add("@navVis", Convert.ToBoolean(tb_isVisible.Text));
cmd.Parameters.Add("@iID", ID);
cmd.CommandText = "UPDATE tblNavigation SET tblNavigation.Titel = @navTitel, tblNavigation.BannerPicture = @navBanner, tblNavigation.nOrder = @navOrder, tblNavigation.isVisible = @navVis WHERE (((tblNavigation.Navigation_ID)=@iID) AND ((tblNavigation.isTopNavigation)=-1));";
cmd.ExecuteNonQuery();
conn.Close();
DataGrid1.EditItemIndex = -1;
UpdateDataSource();
}
</pre>
Hat einer eventuell eine Ahnung was ich hier falsch mache? Das Problem ist wenn ich die Textboxen ausgebe nach dem Update, bekomme ich die Datenbank werte raus, aber nicht die werte die ich neu eingegeben habe?
Grüsschen Andreas
Comment