Vielen Dank für die Antwort, funktioniert soweit super.

Bis auf eine Kleinigkeit. Das Ansprechen der Textboxen müsste ja auch in einer 
Schleife sein, da ich ja im Vorfeld nicht weiss wieviele Textboxen ich habe.
Habe es wie folgt versucht:

   Private Sub CheckBox1_Click(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles CheckBox1.CheckedChanged
        Try
            For i As Integer = 1 To Convert.ToInt16(Textbox12.Text)
               Dim t As TextBox = CType(PlaceHolder1.FindControl("Textbox_" & 
i), TextBox)
               t.Text = "dasdasdasdaw111"
            Next

        Catch
        End Try
   End sub

Funktionierte bei mir aber immer erst bei jedem 2ten Klick auf die Checkbox. 
Kann mir vielleicht einer sagen, warum das so ist, damit ich den Fehler evtl. 
selbst beheben kann?

Vielen Dank an Euch!

Viele Grüße
André Popp


 

>-----Ursprüngliche Nachricht-----
>Von: [EMAIL PROTECTED] 
>[mailto:[EMAIL PROTECTED] Im Auftrag von Christoph Cluss
>Gesendet: Freitag, 7. Oktober 2005 18:29
>An: [email protected]
>Betreff: AW: [Asp.net] per Codebehind Textboxen erzeugen, die 
>man ansprechen kann
>
>kommt drauf an, ob Du die Textbox mit der ID Textbox_1 dem 
>Placeholder vorher hinzugefügt hast.
>in meinem Beispiel ist diese eingefügt worden und Du kannst 
>dannach die Textbox finden/verwenden
>Das folgende Beispiel funktioniert!
>
>
>        For i As Integer = 0 To 9 'z.B.
>            If i > 0 Then
>                Dim l As New Literal
>                l.Text = "<br />"
>                PlaceHolder1.Controls.Add(l)
>            End If
>            Dim x2 As New TextBox
>            x2.Text = "blba blan"
>            x2.Enabled = False
>            x2.ID = "Textbox_" & i        '<= hier wird die ID 
>gesetzt auf die Du später zugreifst
>            PlaceHolder1.Controls.Add(x2)
>
>        Next
>
>        Dim t As TextBox = 
>CType(PlaceHolder1.FindControl("Textbox_1"), TextBox)
>        t.Text = "dasdasdasdaw"
>
>Wenn Du also in Page_load die Textbox einfügst, kannst Du 
>später darauf mit
>PlaceHolder1.FindControl("Textbox_1") darauf verweisen. sonst 
>natürlich nicht.
>
>
>Statt dem Literal kannst Du auch ein Label nehmen.
>Dann kannst Du den Style des Labels über Label1.CssClass setzen.
>
>
>
>
>> -----Ursprüngliche Nachricht-----
>> Von: [EMAIL PROTECTED] 
>[mailto:[EMAIL PROTECTED]
>> Auftrag von Popp Andre
>> Gesendet: Freitag, 7. Oktober 2005 14:46
>> An: [email protected]
>> Betreff: AW: [Asp.net] per Codebehind Textboxen erzeugen, die man
>> ansprechen kann
>>
>>
>> ich bin es leider nochmal!
>>
>>         Try
>>             Dim Textbox1 As TextBox = 
>CType(PlaceHolder1.FindControl("Textbox_1"), TextBox)
>>                 textbox1.Enabled = True
>>         Catch
>>             Response.Write("Geht wieder nicht!")
>>         End Try
>>
>> ist daran schonwieder was falsch und wenn nein, warum geht 
>er immer in den catch-teil, ich glaub ich geb langsam bei der
>> aufgabe auf, der will einfach net so wie ich will :(
>>
>> aber schonmal DANKE an alle, die es versucht hatten
>>
>> Viele Grüße
>> André Popp
>>
>>
>> >-----Ursprüngliche Nachricht-----
>> >Von: [EMAIL PROTECTED]
>> >[mailto:[EMAIL PROTECTED] Im Auftrag von Popp Andre
>> >Gesendet: Freitag, 7. Oktober 2005 14:20
>> >An: [email protected]
>> >Betreff: AW: [Asp.net] per Codebehind Textboxen erzeugen, die
>> >man ansprechen kann
>> >
>> >Sorry, habe noch vergessen, des mit dem Literal zu erklären.
>> >Da soll über der Textbox ein Text stehen, der dann aber auch
>> >auf enabled gestellt werden kann, schließlich soll der
>> >Anwender nicht denken, dass plötzlich alles gelöscht ist ^^.
>> >Falls es sowas nicht gibt, dann mach ich es per response.write.
>> >
>> >@chris: bei mir geht es super ;)
>> >ich hab einfach an der Stelle im HTML-Code die Prozedur
>> >aufgerufen per "<% Gennerieren() %>" und mit "style" konnt ich
>> >es dann von links her einrücken.
>> >Aber da das Ansprechen der Textboxen ja so nicht klappt, hast
>> >du mit deiner Lösung vollkommen recht.
>> >
>> >und dann noch kurz ne Frage zu deinem Textbox ansprechen: kann
>> >man damit nur bestimmte Textboxen ansprechen, oder kann ich
>> >die irgendwie in eine Schleife packen, damit ich alle
>> >generierten ansprechen kann oder sind damit alle Textboxen im
>> >PlaceHolder gemeint?
>> >
>> >Viele Grüße
>> >André Popp
>> >
>> >
>> >-----Ursprüngliche Nachricht-----
>> >Von: [EMAIL PROTECTED]
>> >[mailto:[EMAIL PROTECTED] Im Auftrag von Christoph Cluss
>> >Gesendet: Freitag, 7. Oktober 2005 14:05
>> >An: [email protected]
>> >Betreff: AW: [Asp.net] per Codebehind Textboxen erzeugen, die
>> >man ansprechen kann
>> >
>> >ja, das x declarierst Du ja nur innerhalb der Schleife...
>> >dannach ist es
>> >weg.
>> >
>> >Du kannst aber mit:
>> >dim Textbox1 as
>> >textbox=ctype(placeholder1.findcontrol("Textbox_1"),Textbox)
>> >aus einer anderen Function wieder drauf zugreifen.
>> >
>> >
>> >Response.write ist nautürlich ok... aber gibt ja alles am
>> >anfang der Seite aus
>> >=> du mußt die ganze Seite so zusammen bauen...
>> >Des willl man aber net, gell?
>> >
>> >Das Literal hat zwar keine enabled Eigenschaft aber dafür visible
>> >=> du kannst es unsichtbar machen wenn Du den Zeilenumbruch
>> >nicht brauchst.
>> >
>> >Aller Anfang ist eben schwer.
>> >
>> >Gruß, chris
>> >
>> >
>> >> -----Ursprüngliche Nachricht-----
>> >> Von: [EMAIL PROTECTED]
>> >[mailto:[EMAIL PROTECTED]
>> >> Auftrag von Popp Andre
>> >> Gesendet: Freitag, 7. Oktober 2005 13:36
>> >> An: [email protected]
>> >> Betreff: AW: [Asp.net] per Codebehind Textboxen erzeugen, die man
>> >> ansprechen kann
>> >>
>> >>
>> >> Erstmal: Danke Chris
>> >>
>> >> Dass ich einiges kompliziert mach, muss ich leider in Kauf
>> >nehmen, da ich mir die Sprache zur Zeit selbst aneigne und
>> >> noch nicht wirklich was gutes zum lernen gefunden habe.
>> >> Die Bücher, die ich hab nehmen halt auch "response.write"
>> >(vll. nicht gute Bücher :(  )
>> >>
>> >> Ich erklär am besten nochmal das Problem:
>> >> Ich habe ein Formular, in dem man per Checkbox anklicken
>> >kann, ob es von einer Gruppe erarbeitet wurde oder nicht (Ja/Nein).
>> >> Per Chexbox_Click Event setzt ich dann ein die Felder für
>> >die Gruppe auf "true" oder "false" (enabled).
>> >> Mein Problem in meinem Code lag darin, dass ich die Methoden
>> >nicht mit meiner generierten ID ansprechen konnte, um ihren
>> >> "enabled" Status zu ändern.
>> >>
>> >> Das generierten der Textboxen von Chris klappt super, wobei
>> >ich noch ein paar - ich nenne es mal Folgeprobleme - habe:
>> >> Gibt es ein Äquivalent zu dem "Literal", dass auch die
>> >"enabled"-Eigenschaften hat?
>> >> Wie kann ich in einer anderen Methode auf das "x" von der
>> >Textbox zugreifen, da er immer ausgibt ich hätte es nicht
>> >> deklariert (geschieht alles noch auf der selben Seite)?
>> >>
>> >> Ich entschuldige mich, falls ich einfach nur vor einer Wand
>> >bei diesem Problem sitzt.
>> >>
>> >>
>> >> Viele Grüße
>> >> André Popp
>> >>
>> >>
>> >> -----Ursprüngliche Nachricht-----
>> >> Von: [EMAIL PROTECTED]
>> >[mailto:[EMAIL PROTECTED] Im Auftrag von Christoph Cluss
>> >> Gesendet: Freitag, 7. Oktober 2005 12:34
>> >> An: [email protected]
>> >> Betreff: AW: [Asp.net] per Codebehind Textboxen erzeugen,
>> >die man ansprechen kann
>> >>
>> >> Hallo Andre,
>> >>
>> >> wenn ich das richtig sehe ... viel zu kompliziert und 
>auch nicht .NET
>> >>
>> >> Response.write ist ASP und macht man so (möglichst) nicht mehr.
>> >>
>> >> Ich verstehe nicht ganz Dein Problem aber hier ein Ansatz wie man
>> >> das macht:
>> >>
>> >> setzte einen Palceholder ain Deine Seite
>> >>   For i As Integer = 0 To 9 'z.B.
>> >>             If i > 0 Then
>> >>                 Dim l As New Literal
>> >>                 l.Text = "<br />"
>> >>                 PlaceHolder1.Controls.Add(l)
>> >>             End If
>> >>             Dim x As New Textbox
>> >>             x.Text = "blba blan"
>> >>             x.enabled  = False
>> >>             x.ID = "Textbox_" & I
>> >>             PlaceHolder1.Controls.Add(x)
>> >>
>> >>     Next
>> >>
>> >> nach dem Postback(klick auf button) kannst Du dann die Textboxen
>> >> auswerten oder nochmal nach der Generierung bearbeiten:
>> >>
>> >>         For Each ctl As Control In PlaceHolder1.Controls
>> >>             If ctl.GetType Is GetType(TextBox) Then
>> >>                 Dim textbox1 As TextBox = CType(ctl, TextBox)
>> >>
>> >>                 ' und hier ist die Textbox für die Auswertug
>> >>                 Response.Write(textbox1.Text)
>> >>             End If
>> >>         Next
>> >>
>> >> Gruß, Chris
>> >>
>> >>
>> >>
>> >> > -----Ursprüngliche Nachricht-----
>> >> > Von: [EMAIL PROTECTED]
>> >[mailto:[EMAIL PROTECTED]
>> >> > Auftrag von Popp Andre
>> >> > Gesendet: Freitag, 7. Oktober 2005 11:59
>> >> > An: [email protected]
>> >> > Betreff: [Asp.net] per Codebehind Textboxen erzeugen, die
>> >man ansprechen
>> >> > kann
>> >> >
>> >> >
>> >> > Hi,
>> >> >
>> >> > ich bin neu hier und hoffe mal, dass ich endlich was gutes
>> >zu asp.net gefunden hab ;-)
>> >> >
>> >> > Es geht um folgendes:
>> >> >
>> >> > Ich generiere per Response.Write ("<input....>") ein
>> >Eingabefeld in einer For-Schleife und gebe mit dem Counter
>> >> > entsprechend eine eindeutige ID mit.
>> >> > Da diese For-Schleife nun soviele Textboxen generiert, die
>> >vorher in ein Eingabefeld angegeben wurde (z.B. 3
>> >> > hineingeschrieben und per Methodenaufruf dann 3 per
>> >For-Schleife neue generiert).
>> >> > Nun will ich aber, dass diese neu generierten
>> >Eingabefelder mit mit der entsprechenden Checkbox 
>(aktiv-inaktiv) auf
>> >> > Enabled = true bzw. false gesetzt wird. Da ich aber nicht
>> >im Vorfeld weiss, wieviele generiert werden, weiss ich nicht,
>> >> > wie ich dass nun mit der ID hinbekomme, da ich doch
>> >folgendermassen zugreifen muss:
>> >> >
>> >> > Eingabefeld0.Enabled = true
>> >> > Eingabefeld1.Enabled = true
>> >> > ...
>> >> >
>> >> > Habe erste Versuche den ID-Namen mit ner For-Schleife zu
>> >erstellen versucht, aber leider hab ich keine Ahnung wie ich des
>> >> > nun richtig hinbekomme.
>> >> >
>> >> >
>> >> > Also, falls einer die Lösung zu meinem Problem kennt, wäre
>> >ich sehr dankbar, wenn er sie mir schreiben könnte.
>> >> > Natürlich stehe ich für weitere Fragen gerne zur Verfügung.
>> >> >
>> >> > und hier noch mit code, zum nachvollziehen:
>> >> >
>> >> >     Sub GruppenGen()
>> >> >         Try
>> >> >             Dim j As Integer
>> >> >             For j = 0 To Convert.ToInt16(Textbox12.Text) - 1
>> >> >                 Response.Write("<span
>> >style='margin-left:25px'>Gruppenmitglied </span>" & j + 1 & ":")
>> >> >                 Response.Write("<span
>> >style='margin-left:25px'>Vorname: </span>")
>> >> >                 Response.Write("<Input Type='text'
>> >id='gruppeVorname" & j & "' width='20' height='30' />")
>> >> >                 Response.Write("<span
>> >style='margin-left:70px'>Nachname: </span>")
>> >> >                 Response.Write("<Input Type='text'
>> >id='gruppeNachname" & j & "' width='20' height='30' />")
>> >> >             Next
>> >> >         Catch
>> >> >             Response.Write(" ")
>> >> >         End Try
>> >> >
>> >> >         'Dim arrTextBoxes As TextBox()
>> >> >         'For i As Int16 = 0 To 
>Convert.ToInt16(Textbox12.Text) - 1
>> >> >         '    ReDim Preserve
>> >arrTextBoxes(Convert.ToInt16(Textbox12.Text) - 1)
>> >> >         '    arrTextBoxes(i) = New TextBox
>> >> >     End Sub
>> >> >
>> >> > das ist die Methode, die die Textboxen erzeugen soll (in
>> >Kommentar steht ein Lösungspost von einem Forum, aber ich
>> >> > versteh den nicht wirklich, bzw. konnte denn nicht passend
>> >verwenden)
>> >> >
>> >> > das Convert.ToInt16(Textbox12.Text)-1 soll einfach aus
>> >einer voherigen Textbox die Zahl nehmen, wie oft sie generiert
>> >> werden soll.
>> >> >
>> >> > Die Textbox mit der Textboxanzahl hab ich wie folgt auf
>> >falsche Eingaben überprüfen lassen:
>> >> >
>> >> >     Private Sub Textbox12_TextChanged(ByVal sender As
>> >System.Object, ByVal e As System.EventArgs) Handles
>> >Textbox12.TextChanged
>> >> >         Try
>> >> >             If Convert.ToInt16(Textbox12.Text) >= 1
>> >AndAlso Convert.ToInt16(Textbox12.Text) <= 99 Then
>> >> >                 gruppenErr.Text = "Sie haben es geschafft!"
>> >> >             Else
>> >> >                 gruppenErr.Text = "Bitte geben Sie eine
>> >Zahl von 1 bis 99 ein!"
>> >> >             End If
>> >> >         Catch
>> >> >             gruppenErr.Text = "Bitte geben Sie eine Zahl
>> >von 1 bis 99 ein!"
>> >> >         End Try
>> >> >
>> >> >     End Sub
>> >> >
>> >> >
>> >> >
>> >> > Vielen Dank im voraus!
>> >> >
>> >> > Viele Grüße
>> >> > André Popp
>> >> > _______________________________________________
>> >> > 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
>> >
>> >
>> >_______________________________________________
>> >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