Fórum popular um form com metodos de outra classe #22941

05/05/2007

0

Como teste estou tentando popular um form com metodos,na pagina Psquisa Usuario carrego um DropdownList com o nome dos usuarios
ao clicar no botao Pesquisar(BtnPesq) ele carrega os textbox com o nome e endereço do usuario.
porém só consegui carregar o Dropdowlist,quando seleciono o usuario e clico no botão não acontece nada!nem erro nem nada

Oque estou fazendo errado?
segue o código:

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
PopulaTela();
}
}
private void PopulaTela()
{
ddlUsuario.DataSource = Usuario.GetNome(0);
ddlUsuario.DataTextField = ´Nome´;
ddlUsuario.DataValueField = ´UsuId´;
ddlUsuario.DataBind();
ddlUsuario.Items.Insert(0,new ListItem (´´, ´´));
string strUsuario = ddlUsuario.SelectedValue;
}
private void populaForm(string strUsuario)
{

// Não é possível converter implicitamente o
//tipo ´System.Collections.Generic.IList<IUsuario>´ em ´Usuario´. Existe uma conversão explícita:(Usuario)
Usuario ObjUsuario = (Usuario)Usuario.GetUsuario(strUsuario);
TxtEnd.Text = ObjUsuario.Endereco;
TxtMail.Text = ObjUsuario.Email;
TxtFone.Text = ObjUsuario.Telefone;
TxtCidade.Text = ObjUsuario.Cidade;
TxtEstado.Text = ObjUsuario.Estado;
}
//protected void ddlUsuario_SelectedIndexChanged(object sender, EventArgs e)
//{
// populaForm(´´);
//}
protected void BtnPesq_Click(object sender, EventArgs e)
{
populaForm(´´);
}
}
Meus métodos da classe usuario :

public static IList<IUsuario> GetNome(int UsuID)//retorna os nomes de usuarios do banco para o dropDowList
{
return GetNome( UsuID, ´´);
}

public static IList<IUsuario> GetUsuario(string strUsuario)
{
return GetUsuario(strUsuario, ´´);//retorna o nome e o endereço do usuario do banco para os Txtbox
}

o metodo get usuario:

public static IList<IUsuario> GetUsuario(string strUsuario, string strNome, string strEndereco)
{
SqlConnection conn = new SqlConnection(Settings.connectionstring);
string Proc = ´upUsuarioAll_S´;
SqlCommand cmd = new SqlCommand(Proc, conn);
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter Usuid = cmd.Parameters.Add(´@UsuId´, SqlDbType.Int);
Usuid.Value = strUsuario;
Usuid.Direction = ParameterDirection.Input;

conn.Open();
IList<IUsuario> GetReader = new List<IUsuario>();
SqlDataReader rd = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (rd.Read())
{
int UsuId = 0;
string Nome = ´´;
string Endereco = ´´;


if (!rd.IsDBNull(0))
UsuId = rd.GetInt32(0);
if (!rd.IsDBNull(1))
Nome = rd.GetString(1);
if (!rd.IsDBNull(2))
Endereco = rd .GetString (2);

if (UsuId != 0 && Nome != ´´ && Endereco != ´´)
{
Usuario ObjUsuario = new Usuario(UsuId, Nome, Endereco);
GetReader.Add(ObjUsuario);
}

} rd.Close();
if (conn.State != ConnectionState.Closed)
conn.Close();
return GetReader;
}

como popular os text box sem usar Form view
ou outra forma estou tentando esse lab
para futuros BLL,DAL...


Wandersql

Wandersql

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar