Hi Liste,

ich verwende ein DataGrid zur Aktualisierung von Tabellen.
Ein der Spaltendefinitionen verwendet ein edititemtemplate:

-- schnipp--
<asp:templatecolumn headertext="Menge">
   <headerstyle backcolor="silver"/>
   <itemtemplate>
       <%# DataBinder.Eval(Container.DataItem, "Menge") %>
   </itemtemplate>
   <edititemtemplate>
      <asp:textbox id="Menge" width="30px" runat="server"
       text='<%# DataBinder.Eval(Container.DataItem, "Menge") %>'/>
   </edititemtemplate>
</asp:templatecolumn>
-- schnipp--

Im Kopf des Grid steht:

-- schnipp--
onupdatecommand="update_basket">
-- schnipp--

In der Klasse ist definiert:

-- schnipp--
public void update_basket(object Sender, DataGridCommandEventArgs e)
{
  NeueMenge = (TextBox) e.Item.FindControl("Menge");
  // usw.
}
-- schnipp--

NeueMenge.Text sollte nun beim Aktualisierung den Wert der Eingabe in
die Textbox enthalten.  Es erscheint aber immer der alte Wert aus
der Datenbindung. Alle anderen Vorg�nge, Abbrechen, Edit-Starten
usw. funktionieren.

Es verh�lt sich so, als ob der Feldinhalt ignoriert wird. Die Methode
"update_basket" wird korrekt aufgerufen, der Wert steht ja auch drin,
nur eben der alte.

Interessant ist, wenn man in den Quelltext schaut und "name" abschreibt:

<input name="basket:_ctl4:Menge" ...

und dann mit Request.Form["basket:_ctl4:Menge"] den Wert direkt liest,
stimmt es, also das Formular wird definitiv korrekt versendet.

Hat irgendwer eine Idee, was hier nicht stimmen k�nnte?

J�rg



| [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

Antwort per Email an