Werte im GridView-Steuerelements textbox TemplateField

Habe ich eine asp.net Seite als Standard.aspx, und es ist der master-Seite, ist Site.master. In der Standard.aspx, ich habe ein gridview mit 3 datengebundene Felder und 1 Templatefield, und dann schleppte Sie ein Textfeld, in dieses templatefield.

Werte im GridView-Steuerelements textbox TemplateField

Ich versuche die textbox-Werte für jede Zeile in dieser gridview-Steuerelement, verwenden Sie die FindControl-Methode, aber es ' s Rückkehr Nichts.

Hier ist der code, den ich verwende, um diese Werte abzurufen:

For Each gvr As GridViewRow In GridView1.Rows

        Dim tb As TextBox = DirectCast(gvr.FindControl("TextBox1"), TextBox)
        Dim txt As String = tb.Text
        MsgBox(txt)

    Next

Hinweis: ich bin mit masterPages, und ich denke das ist das problem verursacht.

[Bearbeiten]

In der Page_load-Ereignis, an das gridview gebunden, ich bin mit dem code:

        GridView1.DataSource = f.xDa
        GridView1.DataBind()

In der Button1, ich habe den code Hinzugefügt:

For Each gvr As GridViewRow In GridView1.Rows

        Dim tb As TextBox = DirectCast(gvr.FindControl("TextBox1"), TextBox)
        Dim txt As String = tb.Text
        MsgBox(txt)

    Next

Aber ich bin Immer eine leere textbox.

Danke an alle.

Wo fordern Sie, dass der code? Wenn das GridView nicht datengebundene noch, es wird wahrscheinlich nichts zu zeigen. Auch nicht, dass der code einen Fehler auslösen, oder haben Sie nur eine leere Zeichenfolge in die MsgBox?
Ja, die Gridview funktioniert, mit dem code: GridView1.DataSource = f.xDa GridView1.DataBind() Aber, wenn ich geben Sie in die Textfelder, i cant get die Werte in Ihnen.... In diesem Fall bin ich mir immer eine leere Zeichenfolge in die msgbox.
Innerhalb welches Ereignis ist der code, der in Ihrer Frage ausgeführt?
In der Page_Load: GridView1.DataSource = f.xDa GridView1.DataBind() In einen Button namens Button1 ich den code: <code> Für Jede gvr Als GridViewRow In GridView1.Zeilen Dim tb As TextBox = DirectCast(gvr.FindControl("TextBox1"), TextBox) Dim txt As String = tb.Text MsgBox(txt) Next <code>
Bitte verwenden Sie die Schaltfläche "Bearbeiten" aktualisieren Sie Ihre Frage mit dem entsprechenden code. Es ist zu schwer zu begreifen, in den Kommentaren hier =)

InformationsquelleAutor Diego Oliveira | 2013-10-02

Schreibe einen Kommentar