�hm - das mu� doch net immer in die Form gesetzt werden??

Das ganze kannste auch mit dynamisch gesetzten Buttons machen - dann nimmste einfach 
einen EventHanlder der die Button Ids kontrolliert - und dann dementsprechend die 
Textbox werte setzt! Wie Du Dir das genau vorgestellt hast - wei� ich jetzt net genau 
- aber in Deinem Beispiel war der Button und die Textbox ja eh noch da (angezeigt mit 
der selben ID) somit kannste problemlos auch diesen Weg gehen!

-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Kristian Tingler
Gesendet: Montag, 1. M�rz 2004 11:49
An: [EMAIL PROTECTED]
Betreff: AW: [Asp.net] DRINGEND: TextBox.Text Proptery nach Page.IsPostBack == true 
aendern; MIT SOURCE CODE


Hi,

den anderen Weg hatte ich bereits gemacht, also TextBox und Buttons immer in die Form 
gesetzt. ABER, so soll unser System nicht ausgelegt sein. Hintergrund ist, das ganze 
soll als HTML-Tabelle benutzt werden, in welcher dann die TextBoxen usw. stehen. Von 
Programmtext aus, nicht vom HTML-Code wollen wir dann die Spalten etc. der Tabelle 
aendern, ist einfacher zu handhaben. Daher muss es so umstaendlich sein, obwohl es 
eigentlich nicht wirklich umstaendlich ist.

Die Sache mit der Pre-Render Methode ist wirklich gut. Waere aber besser wenn ich das 
noch irgendwie anders handhaben koennte, also wenn es einen elegenteren Weg gaebe. 
Ansonsten muss ich tatsaechlich darauf zurueckgreifen.

Ach ja, ich bin mehrmals schon mit dem Debugger durch den Code gegangen, laut 
Debugger-Informationen wird der Inhalt der TextBox korrekt neu gesetzt. Ist aber 
dummerweise nicht in der Form zu sehen. (War mein erster Gedanke, also das Problem 
auftrat.)

Ich danke, Euch auf jeden Fall, fuer Eure Hilfe!


Mit freundlichen Gruessen!
Kristian Tingler



-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Auftrag von Pessner, Andreas
Gesendet: Montag, 1. M�rz 2004 11:31
An: [EMAIL PROTECTED]
Betreff: AW: [Asp.net] DRINGEND: TextBox.Text Proptery nach Page.IsPostBack == true 
aendern; MIT SOURCE CODE


Ist das net a bissle Sehr umst�ndig??

Ansonsten wenn du das wirlich so umst�ndlich machen willst - dann debugge das ganze 
doch einfach - zumal du ja Visual Studio benutzt (sieht zumindest so aus!)

Wenn DU das net so umst�ndlich brauchst - dann w�rde ich das anders machen!

1. Textbox immer rein
2. Button auch rein!

3. Der Button bekommt nen EventHandler!
Button Btn = new Button();
Btn.Click += new EventHandler(Btn_click_event);

4. Im Eventhandler

Private void Btn_click_event(object sender, EventArgs e)
{
        txt.Text = "hier der neue Text!";
}

So das m��te es so ungef�hr sein!

-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Kristian Tingler
Gesendet: Montag, 1. M�rz 2004 10:47
An: [EMAIL PROTECTED]
Betreff: [Asp.net] DRINGEND: TextBox.Text Proptery nach Page.IsPostBack == true 
aendern; MIT SOURCE CODE


Hallo,

ich hab da ein mit Sicherheit einfaches Problem,
was mich aber schon das ganze Wochenende an Nerven
gekostet hat.

Ich habe eine Form, in der Form habe ich einen
PlaceHolder. Dann habe ich ja die PageLoad-Methode,
in ihr deklarieren ich eine TextBox und initialisiere
diese, das selbe mit einem Button. Beide Controls
fuege ich der Control-Collection des PlaceHolders
hinzu. Das ganze geschieht waehrend eines
Page.IsPostBack == false.
Wenn jetzt Page.IsPostBack == true ist, frage ich die geposteten Werte der TextBox ab, 
und aendere den Inhalt des TextBox.Text - Properties. Dann fuege ich die Controls 
wieder der PlaceHolder-Control-Collection hinzu. Aber die TextBox in der Form, hat 
noch immer den selben Inhalt, welche ich eingegeben habe. Obwohl ich den Inhalt nach 
dem PostBack geaendert habe.

Konkret:

Gebe ich in der TextBox einen Text ein, klicke auf
den Button, ist immernoch der selbe Inhalt in der
TextBox. Und genau das soll nicht sein!

Der Source Code ist nur ein Beispiel Projekt, um das
Problem einfacher zu beschreiben.


Danke, schoneinmal im voraus fuer Eure Hilfe!

Mit freundlichen Gruessen!
Kristian Tingler



Source-Code:

using System;
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Diagnostics;

namespace WebTest
{
        /// <summary>
        /// Zusammenfassung f�r WebForm1.
        /// </summary>
        public class WebForm1 : System.Web.UI.Page
        {
                protected System.Web.UI.WebControls.PlaceHolder PlaceHolder1;

                private void Page_Load(object sender, System.EventArgs e)
                {
                        Button btn = null;

                        // TextBox deklarieren und initialisieren
                        System.Web.UI.WebControls.TextBox               txt;
                        txt = new TextBox();

                        PlaceHolder1.Controls.Clear();

                        if (Page.IsPostBack)
                        {
                                // jetzt die gePOSTeten Werte holen

                                NameValueCollection coll = Request.Form;

                                String[] arrKey = coll.AllKeys;     // alle Keys in 
ein String-Array
                                SortedList  slV = new SortedList();
                                for (int i = 0; i < arrKey.Length; i++)
                                {
                                        String[] arrValue = coll.GetValues(arrKey[i]);
                                        if (arrValue.Length > 0)
                                        {
                                                slV.Add(arrKey[i], arrValue[0]);
                                                Debug.WriteLine("Key: " + 
arrKey[i].ToString() + " - Value: " +
arrValue[0].ToString());
                                        }
                                }

                                if (slV.ContainsKey("txtID"))   // txt-Control wurde 
geaendert
                                {
                                        txt.ID = "txtID";

                                        txt.Text = "Ich stehe hier, nach dem 
Button-Klick, in der TextBox";  //
coll["txtID"];
                                        PlaceHolder1.Controls.Add(txt);

                                        btn = new Button();
                                        PlaceHolder1.Controls.Add(btn);

                                        PlaceHolder1.Controls.Add(new 
LiteralControl("Page.IsPostBack ==
true"));
                                }
                        }
                        else
                        {
                                txt.ID = "txtID";
                                txt.Text = "";

                                PlaceHolder1.Controls.Add(txt);

                                btn = new Button();
                                PlaceHolder1.Controls.Add(btn);

                                PlaceHolder1.Controls.Add(new 
LiteralControl("Page.IsPostBack ==
false"));
                        }
                }

                #region Vom Web Form-Designer generierter Code
                override protected void OnInit(EventArgs e)
                {
                        //
                        // CODEGEN: Dieser Aufruf ist f�r den ASP.NET Web 
Form-Designer erforderlich.
                        //
                        InitializeComponent();
                        base.OnInit(e);
                }

                /// <summary>
                /// Erforderliche Methode f�r die Designerunterst�tzung.
                /// Der Inhalt der Methode darf nicht mit dem Code-Editor ge�ndert 
werden.
                /// </summary>
                private void InitializeComponent()
                {
                        this.Load += new System.EventHandler(this.Page_Load);

                }
                #endregion
        }
}


_______________________________________________
Asp.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net



_______________________________________________
Asp.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net

Antwort per Email an