danke f�r deine m�he, den von dir vorgeschlagenen workaround habe ich auch derzeit im einsatz und der funktioniert auch.
wenn ich eine zahl einsetze �ndert sich gar nichts der fehler bleibt erhalten)) thx gerald -----Urspr�ngliche Nachricht----- Von: Andre Seifert [mailto:[EMAIL PROTECTED]] Gesendet: Mittwoch, 25. September 2002 11:58 An: aspDEdotnet Betreff: [aspdedotnet] AW: DataKey im Datagrid Ich schaue es mal in Ruhe durch... Ein anderer Vorschlag noch: lass doch die id in eine Column schreiben, die du dann auf visible=false setzt und so ausliest, wie die anderen Werte, und wenn Du nicht mit Relations im Dataset arbeitest, brauchst du es auch nicht Was passiert denn, wenn Du eine Zahl mal einsetzt string id = >> (string)gridSuchvorgaben.DataKeys[3]; >> -----Urspr�ngliche Nachricht----- >> Von: [EMAIL PROTECTED] [mailto:bounce- >> [EMAIL PROTECTED]] Im Auftrag von Gerald B�ck >> Gesendet: Dienstag, 24. September 2002 22:34 >> An: aspDEdotnet >> Betreff: [aspdedotnet] AW: DataKey im Datagrid >> >> nein paging hab ich auch nicht an >> >> anbei der aufs wichtigste reduzierte code: >> >> public void Update_gridSuchvorgaben(Object sender, >> DataGridCommandEventArgs e) >> { >> kdnr = Request.Form["InputKdnr"]; >> // hier taucht dann die out of range exeception auf >> string id = >> (string)gridSuchvorgaben.DataKeys[(int)e.Item.ItemIndex]; >> TextBox anzeige = >> (TextBox)e.Item.Cells[0].FindControl("txtAnzeige"); >> TextBox wert = >> (TextBox)e.Item.Cells[0].FindControl("txtWert"); >> TextBox bedingung1 = >> (TextBox)e.Item.Cells[0].FindControl("txtBedingung1"); >> TextBox wert1 = >> (TextBox)e.Item.Cells[0].FindControl("txtWert1"); >> TextBox bereich1 = >> (TextBox)e.Item.Cells[0].FindControl("txtBereich1"); >> TextBox bedingung2 = >> (TextBox)e.Item.Cells[0].FindControl("txtBedingung2"); >> TextBox wert2 = >> (TextBox)e.Item.Cells[0].FindControl("txtWert2"); >> TextBox bereich2 = >> (TextBox)e.Item.Cells[0].FindControl("txtBereich2"); >> TextBox bedingung3 = >> (TextBox)e.Item.Cells[0].FindControl("txtBedingung3"); >> TextBox wert3 = >> (TextBox)e.Item.Cells[0].FindControl("txtWert3"); >> TextBox bereich3 = >> (TextBox)e.Item.Cells[0].FindControl("txtBereich3"); >> TextBox bedingung4 = >> (TextBox)e.Item.Cells[0].FindControl("txtBedingung4"); >> TextBox wert4 = >> (TextBox)e.Item.Cells[0].FindControl("txtWert4"); >> TextBox bereich4 = >> (TextBox)e.Item.Cells[0].FindControl("txtBereich4"); >> TextBox beschreibung = >> (TextBox)e.Item.Cells[0].FindControl("txtBeschreibung"); >> TextBox izh = >> (TextBox)e.Item.Cells[0].FindControl("txtiZh"); >> TextBox ausschluss = >> (TextBox)e.Item.Cells[0].FindControl("txtAusschluss"); >> DropDownList umfang = >> (DropDownList)e.Item.Cells[0].FindControl("ddlUmfang"); >> DropDownList sensitivity = >> (DropDownList)e.Item.Cells[0].FindControl("ddlSens"); >> short sens = 0; >> if(sensitivity.SelectedItem.Value=="True") >> sens = 1; >> >> string sqlStichwortUpdate = "Update Test_suchvorgaben set >> Anzeige='" + anzeige.Text.Trim() + "', Wert='" + wert.Text.Trim() + "', >> Bedingung1='" + bedingung1.Text.Trim() + "', Bereich1=" + >> bereich1.Text.Trim() + ", Wert1='" + wert.Text.Trim() + "', Bedingung2='" >> + bedingung1.Text.Trim() + "', Bereich2=" + bereich1.Text.Trim() + ", >> Wert2='" + wert.Text.Trim() + "', Bedingung3='" + bedingung1.Text.Trim() >> + "', Bereich3=" + bereich1.Text.Trim() + ", Wert3='" + wert.Text.Trim() >> + "', Bedingung4='" + bedingung1.Text.Trim() + "', Bereich4=" + >> bereich1.Text.Trim() + ", Wert4='" + wert.Text.Trim() + "', >> Beschreibung='" + beschreibung.Text.Trim() + "', izh='" + izh.Text.Trim() >> + "', Ausschluss='" + ausschluss.Text.Trim() + "', Umfang='" + >> umfang.SelectedItem.Value + "', Sensitivity='" + sens + "', Aenderung='" >> + DateTime.Now + "', AnderungDurch='" + initials + "' Where ID=" + id; >> message.Text = sqlStichwortUpdate; >> >> } >> >> >> >> </script> >> <html> >> <head> >> <link href="default.css" rel="stylesheet" /> >> </head> >> <body> >> <form runat="server"> >> <asp:DataGrid id="gridSuchvorgaben" runat="server" >> HeaderStyle-Font-Bold="True" CellSpacing="1" Border="0" >> AutoGenerateColumns="False" OnCancelCommand="Cancel_gridSuchvorgaben" >> OnUpdateCommand="Update_gridSuchvorgaben" >> OnItemDataBound="ItemDataBound_gridSuchvorgaben" >> OnEditCommand="Edit_gridSuchvorgaben" DataKey="ID"> >> <Columns> >> <asp:TemplateColumn HeaderStyle-ForeColor="#c23636"> >> <HeaderTemplate> >> <tr> >> <td colspan="10"> >> <h1>Stichworte >> </h1> >> </td> >> </tr> >> <tr> >> <td class="smallBezeichner"> >> Anzeige </td> >> <td class="smallBezeichner"> >> SearchExpression </td> >> <td class="smallBezeichner"> >> Details </td> >> <td class="smallBezeichner"> >> Umfang </td> >> <td class="smallBezeichner"> >> Sens </td> >> <td class="smallBezeichner"> >> Eintrag </td> >> <td class="smallBezeichner"> >> �nderung </td> >> <td class="smallBezeichner"> >> </td> >> </tr> >> </HeaderTemplate> >> <ItemTemplate> >> <tr> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Anzeige") %> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Wert") %> <%# >> DataBinder.Eval(Container.DataItem, "Bedingung1") %> <%# >> DataBinder.Eval(Container.DataItem, "Wert1") %> <%# >> DataBinder.Eval(Container.DataItem, "Bereich1") %> <%# >> DataBinder.Eval(Container.DataItem, "Bedingung2") %> <%# >> DataBinder.Eval(Container.DataItem, "Wert2") %> <%# >> DataBinder.Eval(Container.DataItem, "Bereich2") %> <%# >> DataBinder.Eval(Container.DataItem, "Bedingung3") %> <%# >> DataBinder.Eval(Container.DataItem, "Wert3") %> <%# >> DataBinder.Eval(Container.DataItem, "Bereich3") %> <%# >> DataBinder.Eval(Container.DataItem, "Bedingung4") %> <%# >> DataBinder.Eval(Container.DataItem, "Wert4") %> <%# >> DataBinder.Eval(Container.DataItem, "Bereich4") %> >> </td> >> <td class="smallDaten"> >> Beschreibung: <%# >> DataBinder.Eval(Container.DataItem, "Beschreibung") %> <br /> >> izh: <%# >> DataBinder.Eval(Container.DataItem, "izh") %> <br /> >> Ausschluss: <%# >> DataBinder.Eval(Container.DataItem, "Ausschluss") %> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Umfang") %> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Sensitivity") %> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Eintragung") %> <%# >> DataBinder.Eval(Container.DataItem, "Eintragungdurch") %> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Aenderung") %> <%# >> DataBinder.Eval(Container.DataItem, "Aenderungdurch") %> </td> >> <td class="smallDaten"> >> <asp:LinkButton id="button1" >> runat="server" Text="Bearbeiten" CommandName="edit" /> >> </td> >> </tr> >> </ItemTemplate> >> <EditItemTemplate> >> <tr> >> <td class="smallDaten"> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtAnzeige" Text='<%# >> DataBinder.Eval(Container.DataItem, "Anzeige") %> ' /> >> </td> >> <td class="smallDaten"> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtWert" Text='<%# >> DataBinder.Eval(Container.DataItem, "Wert") %>' /> >> <br /> >> <asp:TextBox Runat="server" >> Width="12" class="Box" size="30" ID="txtBedingung1" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bedingung1") %>' /> >> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtWert1" Text='<%# >> DataBinder.Eval(Container.DataItem, "Wert1") %>' /> >> >> <asp:TextBox Runat="server" >> Width="24" class="Box" size="30" ID="txtBereich1" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bereich1") %>' /> >> <br /> >> <asp:TextBox Runat="server" >> Width="12" class="Box" size="30" ID="txtBedingung2" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bedingung2") %>' /> >> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtWert2" Text='<%# >> DataBinder.Eval(Container.DataItem, "Wert2") %>' /> >> >> <asp:TextBox Runat="server" >> Width="24" class="Box" size="30" ID="txtBereich2" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bereich2") %>' /> >> <br /> >> <asp:TextBox Runat="server" >> Width="12" class="Box" size="30" ID="txtBedingung3" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bedingung3") %>' /> >> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="Wert3" Text='<%# >> DataBinder.Eval(Container.DataItem, "Wert3") %>' /> >> >> <asp:TextBox Runat="server" >> Width="24" class="Box" size="30" ID="txtBereich3" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bereich3") %>' /> >> <br /> >> <asp:TextBox Runat="server" >> Width="12" class="Box" size="30" ID="txtBedingung4" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bedingung4") %>' /> >> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtWert4" Text='<%# >> DataBinder.Eval(Container.DataItem, "Wert4") %>' /> >> >> <asp:TextBox Runat="server" >> Width="24" class="Box" size="30" ID="txtBereich4" Text='<%# >> DataBinder.Eval(Container.DataItem, "Bereich4") %>' /> >> </td> >> <td class="smallDaten"> >> Beschreibung:<br /> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtBeschreibung" Text='<%# >> DataBinder.Eval(Container.DataItem, "Beschreibung") %>' /> >> <br /> >> iZh:<br /> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtizH" Text='<%# >> DataBinder.Eval(Container.DataItem, "izh") %>' /> >> <br /> >> Ausschluss:<br /> >> <asp:TextBox Runat="server" >> class="Box" size="30" ID="txtAusschluss" Text='<%# >> DataBinder.Eval(Container.DataItem, "Ausschluss") %>' /> >> </td> >> <td class="smallDaten"> >> <asp:dropdownlist id="ddlUmfang" >> runat="server" class="Box" Value='<%# DataBinder.Eval(Container.DataItem, >> "Umfang") %>' /> >> </td> >> <td class="smallDaten"> >> <asp:dropdownlist id="ddlSens" >> class="Box" runat="server" /> >> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Eintragung") %> <%# >> DataBinder.Eval(Container.DataItem, "Eintragungdurch") %> </td> >> <td class="smallDaten"> >> <%# >> DataBinder.Eval(Container.DataItem, "Aenderung") %> <%# >> DataBinder.Eval(Container.DataItem, "Aenderungdurch") %> </td> >> <td class="smallDaten"> >> <asp:LinkButton runat="server" >> Text="Aktualisieren" CommandName="update" /> >> <br /> >> <asp:LinkButton runat="server" >> Text="Abbrechen" CommandName="cancel" /> >> </td> >> </tr> >> </EditItemTemplate> >> </asp:TemplateColumn> >> </Columns> >> </asp:DataGrid> >> >> >> -----Urspr�ngliche Nachricht----- >> Von: Andre Seifert [mailto:[EMAIL PROTECTED]] >> Gesendet: Dienstag, 24. September 2002 18:53 >> An: aspDEdotnet >> Betreff: [aspdedotnet] AW: DataKey im Datagrid >> >> >> Verwendest Du Paging? Dann musst Du n�mlich erst umrechnen. >> Sonst poste doch mal die aspx und aspx.cs >> >> >> -----Urspr�ngliche Nachricht----- >> >> Von: [EMAIL PROTECTED] [mailto:bounce- >> >> [EMAIL PROTECTED]] Im Auftrag von Gerald B�ck >> >> Gesendet: Dienstag, 24. September 2002 09:07 >> >> An: aspDEdotnet >> >> Betreff: [aspdedotnet] AW: DataKey im Datagrid >> >> >> >> hab ich vergessen zu schreiben >> >> >> >> string id = (string)gridSuchvorgaben.DataKeys[(int)e.Item.ItemIndex]; >> >> >> >> ergibt leider die selbe fehlermeldung >> >> >> >> System.ArgumentOutOfRangeException: Der Index liegt au�erhalb des >> >> g�ltigen Bereichs. Der Index darf keine negative Zahl und muss >> kleiner >> >> als die Auflistungsgr��e sein. Parametername: index >> >> >> >> -----Urspr�ngliche Nachricht----- >> >> Von: Pessner, Andreas [mailto:[EMAIL PROTECTED]] >> >> Gesendet: Dienstag, 24. September 2002 08:10 >> >> An: aspDEdotnet >> >> Betreff: [aspdedotnet] AW: DataKey im Datagrid >> >> >> >> >> >> Hol Dir das ganze doch erstmal in einen String rein - den Du Dir dann >> >> erstmal ausgibtst - dann siehst Du auch erstmal was da drin steht - >> und >> >> findest den Fehler vielleicht eher. >> >> >> >> -----Urspr�ngliche Nachricht----- >> >> Von: Gerald B�ck [mailto:[EMAIL PROTECTED]] >> >> Gesendet: Montag, 23. September 2002 23:27 >> >> An: aspDEdotnet >> >> Betreff: [aspdedotnet] AW: DataKey im Datagrid >> >> >> >> >> >> leider nicht wenn ich >> >> >> >> int id = (int)e.Item.ItemIndex; >> >> >> >> ausf�hre kommt eine ganze, positive Zahl ohne Fehler raus. >> >> >> >> -----Urspr�ngliche Nachricht----- >> >> Von: Joachim van de Bruck [mailto:[EMAIL PROTECTED]] >> >> Gesendet: Montag, 23. September 2002 23:22 >> >> An: aspDEdotnet >> >> Betreff: [aspdedotnet] AW: DataKey im Datagrid >> >> >> >> >> >> Hallo! >> >> >> >> > Das Auf�hren dieser Codezeile >> >> > >> >> > int id = (int)gridSuchvorgaben.DataKeys[(int)e.Item.ItemIndex]; >> >> > >> >> > verursacht folgenden Fehler: >> >> > >> >> > System.ArgumentOutOfRangeException: Der Index liegt au�erhalb >> >> > des g�ltigen Bereichs. Der Index darf keine negative Zahl und >> >> > muss kleiner als die Auflistungsgr��e sein. Parametername: index >> >> > >> >> > Ich komm aber einfach nicht drauf worn es liegen k�nnte. >> >> > e.Item.ItemIndex funktioniert jedenfalls ud gibt einen >> >> > integer wert zur�ck. >> >> >> >> Kann es sein, dass Du diese Zeile grunds�tzlich und nicht abh�ngig >> von >> >> einem Edit-, Update- oder Delete-Event ausf�hrst? Der ItemIndex ist >> >> n�mlich negativ (-1), wenn keine Zeile bearbeitet wird. >> >> >> >> Freundliche Gr��e >> >> Joachim van de Bruck >> >> >> >> >> >> | [aspdedotnet] als [EMAIL PROTECTED] subscribed >> >> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv >> >> | Sie k�nnen sich unter folgender URL an- und abmelden: >> >> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp >> >> >> >> | [aspdedotnet] als [EMAIL PROTECTED] subscribed >> >> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv >> >> | Sie k�nnen sich unter folgender URL an- und abmelden: >> >> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp >> >> >> >> | [aspdedotnet] als [EMAIL PROTECTED] subscribed >> >> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv >> >> | Sie k�nnen sich unter folgender URL an- und abmelden: >> >> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp >> >> >> >> | [aspdedotnet] als [EMAIL PROTECTED] subscribed >> >> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv >> >> | Sie k�nnen sich unter folgender URL an- und abmelden: >> >> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp >> >> >> | [aspdedotnet] als [EMAIL PROTECTED] subscribed >> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv >> | Sie k�nnen sich unter folgender URL an- und abmelden: >> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp >> >> | [aspdedotnet] als [EMAIL PROTECTED] subscribed >> | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv >> | Sie k�nnen sich unter folgender URL an- und abmelden: >> | http://www.dotnetgerman.com/listen/aspDEdotnet.asp | [aspdedotnet] als [EMAIL PROTECTED] subscribed | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.dotnetgerman.com/listen/aspDEdotnet.asp | [aspdedotnet] als [email protected] subscribed | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.dotnetgerman.com/listen/aspDEdotnet.asp
