webForumDet fria alternativet

Problem att hitta TextBox-värde efter PostBack i en UserControl

.NETur .NET

4 svar · 286 visningar · startad av Engine^

Engine^Medlem sedan dec. 20003 887 inlägg
#1

Jag har blivit aningen förvirrad och hittar således inte det postade datat...

Jag har en UserControl, som innehåller en <form runat="server"> och jag hade tänkt att sköta inloggning via detta formulär, men i min codebehind kommer jag inte åt något från det postade formuläret.

using System;
using System.Web.UI.WebControls;

public class CPageLogin : System.Web.UI.UserControl
{
  protected TextBox objTextBoxUsername;
  protected TextBox objTextBoxPassword;

  private void Page_Load(object ObjSrc, EventArgs e)
  {
    if(this.IsPostBack)
      LogonUser();
  }

  private void LogonUser()
  {
    [blue]//Dessa metoder har jag provat...[/blue]
    string strUsername = Request.Form["objTextBoxUsername"];
    string strUsername = this.Request.Form["objTextBoxUsername"];
    string strUsername = objTextBoxUsername.Text;

    [blue]//annan kod...[/blue]
  }
}

Jag erkänner mig så jäkla besegrad av detta och frågar ödmjukt efter hjälp ;)

Vart är mina formulärdata?

DinoMedlem sedan sep. 20011 914 inlägg
#2

Du kan inte ha <form runat="server"> i en userControl.

Engine^Medlem sedan dec. 20003 887 inlägg
#3

Va fanken!

Hur kommer det sig?

Engine^Medlem sedan dec. 20003 887 inlägg
#4

Nu visade det sig att jag kunde ha en <form runat="server"> i min UserControl... jag hittade mina värden via

strUsername = this.Request.Form.Get(1);

[blue]//Det fungerade även med[/blue]
strUsername = this.Request.Form.Get(objTextBoxUsername.UniqueID);
DinoMedlem sedan sep. 20011 914 inlägg
#5

Ok, då har man lärt sig något nytt idag med. :)

123 ms totalt · 3 externa anrop · v20260731065814-full.363dfaf6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
118 ms — hämta tråd, inlägg och bilagor (db)