Hat sich erledigt - die GetPhotoList Methode darf beim Postback keine
Binding ausfuehren, sonst haut's die Aenderungen in der Textbox gleich
wieder wech.

Th.


> -----Original Message-----
> From: Eiben, Thorsten 
> Sent: Tuesday, October 15, 2002 9:34 AM
> To: '[EMAIL PROTECTED]'
> Subject: Update updated erst beim 2.Klick
> 
> 
> Hallo Liste:
> 
> Ich erstelle mir mittels Repeater eine Liste von Textboxen 
> und Buttons.
> 
>  -----------------     --------
>  | Text 1        |     |Update|
>  -----------------     --------
>  -----------------     --------
>  | Text 2        |     |Update|
>  -----------------     --------
> usw.
> 
> Wenn der User nun den Update-Button anklickt soll der Text in 
> der nebenstehenden Box in die Datenbank geschickt werden.
> 
> Sieht im groben so aus wie unten gezeigt(die Funktion 
> GetPhotoList holt die Daten aus der DB und bindet sie an den 
> Repeater). Wenn nun der Update-Button zum 1. Mal geklickt 
> wird, gibt's ein Postback, un die Datenbank wird auch schoen 
> upgedatet. Nur die Textbox zeigt immer noch den alten Text 
> an. Ein weiterer Blick in die Trace-Informationen (Form 
> Collection) zeigt auch fuer den Inhalt des Formulares den neuen Wert. 
> 
> Versteht das wer? 
> 
> Th.
> 
> 
> Web Form:
> 
> <asp:Repeater id="PhotoList" OnItemCommand="R1_ItemCommand" 
> runat="server"> ... <ItemTemplate> <tr> <td valign=top> 
> <asp:TextBox runat=server TextMode="MultiLine" Wrap=True 
> Columns=60 Rows=3 ID=text Text=<%# 
> DataBinder.Eval(Container.DataItem, "Description")%>/> </td> 
> <td> <asp:Button ID="btnUpdate" Runat=server Text="Update" 
> CssClass=smallbutton CommandArgument=<%# 
> DataBinder.Eval(Container.DataItem, "ID")%>/> </td> </tr> 
> </ItemTemplate> ... <asp:/Repeater>
> 
> Code Behind:
> 
> private void Page_Load(object sender, System.EventArgs e)
> {
> if (!IsPostBack) 
> {
> GetPhotoList();
> }
> }
> 
> public void R1_ItemCommand(Object Sender, RepeaterCommandEventArgs e) 
> {
> OleDbConnection oDBConnect = 
> DBFunctions.OpenDB(ConfigurationSettings.AppSettings["ConnString"]);
> int intIndex = e.Item.ItemIndex;
> int intPhoto = 
> System.Convert.ToInt32(((Button)e.CommandSource).CommandArgument);
> RepeaterItem rptItem = PhotoList.Items[e.Item.ItemIndex];
> string strDescription = ((TextBox)rptItem.Controls[1]).Text;
> bool updated = 
> AlbumFunctions.UpdatePhoto(oDBConnect,intPhoto,"Description",s
> trDescription);
> }
> GetPhotoList();
> }    
> 

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