Usuário com melhor resposta
Como Pegar o Texto de um TEXTBOX e colocar no meu OBJETO?

Pergunta
-
Boa Tarde,
Tenho a seguinte situação.
Quando logo no Sistema, armazeno o objeto usuário numa Sessão assim:
Session[
"Usuario"] = UsuarioDB.Usuario;
Em Seguida, eu tenho uma tela para o usuário atualizar seus dados cadastrais.
Antes de abrir essa tela que tem vários textbox, eu passo para cada textbox seu respectivo valor que está no Usuario da sessao assim:
edtCodigo.Text = ((
Usuario)Session["Usuario"]).Cod_usu.ToString();
edtNome.Text = ((
Usuario)Session["Usuario"]).Nom_usu;
edtLogin.Text = ((
Usuario)Session["Usuario"]).Login;
edtSenha.Text = ((
Usuario)Session["Usuario"]).Senha;
Até ai tudo bem, todos os campos do formulário são abastecidos com os seus valores.
Nessa tela tenho o botão salvar.
Quando clico em salvar, quero pegar os novos dados e adicionar em um novo objeto USUARIO assim:
Usuario User = new Usuario();
User.Cod_usu =
Convert.ToInt32(edtCodigo.Text);
User.Nom_usu =
"LENO PASSOS";
User.Login = edtLogin.Text;
User.Senha = edtSenha.Text;
Só que quando vou verificar o que está nos campos do objeto Usuário, não está o que foi digitado no formulário, e sim o que estava antes quando a tela foi aberta, ou seja, preciso de pegar esses dados que foram editados no formulário e jogar para o meu objeto.
Alguem pode me Ajudar?
Obrigado!
Respostas
-
Você pode seguir essa rotina:
1) Crie uma método para popular os textbox, algo como PopulaTextBox(); Nesse método você faz justamente o que vocÊ citou, atribui os campos de textbox aos valores armazenados na sessão.
2) Quando o usuário gravar os dados você passa os novos valores pra sessão, pois mesmo estando no banco de dados é necessário atualizar os valores para a sessão.
3)Depois de gravado basta chamar seu método PopulaTextBox(); Isto deixa seu código mais organizado e evita repetição de código.
Abraço- Marcado como Resposta Harley Araujo terça-feira, 16 de março de 2010 11:35
Todas as Respostas
-
isso é problema de postback
as informações da pageLoad coloca dentro do IF abaixo
if(!isPostBack)
{
...
...
...
}
abraço,
Leonardo B. Moreira - Web Developer .net with asp.net and C# - I know, it is only programming but I like it.- Sugerido como Resposta Harley Araujo terça-feira, 16 de março de 2010 11:35
-
Você pode seguir essa rotina:
1) Crie uma método para popular os textbox, algo como PopulaTextBox(); Nesse método você faz justamente o que vocÊ citou, atribui os campos de textbox aos valores armazenados na sessão.
2) Quando o usuário gravar os dados você passa os novos valores pra sessão, pois mesmo estando no banco de dados é necessário atualizar os valores para a sessão.
3)Depois de gravado basta chamar seu método PopulaTextBox(); Isto deixa seu código mais organizado e evita repetição de código.
Abraço- Marcado como Resposta Harley Araujo terça-feira, 16 de março de 2010 11:35