Inquiridor
Carregando tabela do Mysql em um listbox do c#

Pergunta
-
Boa noite amigos, me ajudem por favor, eu li estes postes e nao consegui, acontece o seguinte, eu criei uma banco de dados e nele tem as seguintes tabelas, codigo , nomeReceita, ingredientes , modoDePreparo.
criei um form, e neste fomr possui um list box, que ja lista o nome de todas as receitas cadastradas, e criei
um botao, no click desse botao gostaria que ele procurasse o nome de acordo com oq esta no listbox, e que
abrisse o form3 que ja e.sta criado com richtextebox1 e richtextebox2, carregando o richtextebox1 com a tabela
Ingredientes, e o richtextebox2 com a tabela modoDePreparo,
minhas tabelas no Mysql estao como varchar
Todas as Respostas
-
Olá, Gabriel.
Você pode pegar o SelectedItem ou SelectedValue do ListBox e passar seu texto para o segundo form utilizar como parâmetro para uma instrução SQL que use esse texto na cláusula WHERE.
Se você puder ser mais claro em qual é sua dúvida, facilitaria lhe ajudar com uma resposta mais direta.
Joel Rodrigues MSP, MCP, MTA Editor geral .NET Magazine E Easy .NET Magazine
-
obrigado.
vamos lá então:
no MySQL tenho 4 tabelas, (codigo:int(999)=primary key, nomeReceita=varchar(50) , ingredientes =varchar(50), mododepreparo=varchar(50),no visual studio tenho 2 forms, ( frmselect e frmselectfilho), no frmselect tenho um Commboxe e um button, já no frmselectfilho tenho listboxIngredientes e o listboxModoDePreparo,
quero que quando clicar no button abra o frmselectfilho e ja preencha o listboxIngredientes com a tabela ingredientes, e o listboxmododepreparo com a tabela mododepreparo do MySQL de ambos de acordo com o nome que esteja selecionado no commboxe, o commboxe recebe a tabela nomeReceita do MySQL, então quando clicar no button terá q fazer uma pesquisa no banco de dados>na tabela nomeReceita, e carregar as tabelas ingredientes e mododePreparo de acordo com o nome do commboxe.
tenho muito pouco conhecimento no c#, então gostaria de ver como que ficaria este o código por favor.espero que alguém possa me ajudar, obrigado...
- Editado Gabriel Verli sexta-feira, 13 de fevereiro de 2015 13:06 Maior Aprofundamento na pergunta
-
Olá Gabriel,
Consegui simular de forma simples o que entendi. Veja se atende.
ASPX
<asp:ListBox ID="ListBox1" runat="server" OnSelectedIndexChanged="ListBox1_SelectedIndexChanged" AutoPostBack="true"></asp:ListBox> <asp:TextBox ID="txtIngredientes" runat="server"></asp:TextBox> <asp:TextBox ID="txtModoDePreparo" runat="server"></asp:TextBox>
CodeBehind
public partial class testeGabrilVerli : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // carrega o listbox ListBox1.DataTextField = "nomeReceita"; ListBox1.DataValueField = "codigo"; ListBox1.DataSource = ExemploGabrilVerli.Listar(); ListBox1.DataBind(); } } protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e) { // recupera o item selecionado ExemploGabrilVerli itemSelecionado = recuperarItemSelecionado(int.Parse(ListBox1.SelectedValue)); // manipula o item selecionado txtIngredientes.Text = itemSelecionado.ingredientes; txtModoDePreparo.Text = itemSelecionado.modoDePreparo; } ExemploGabrilVerli recuperarItemSelecionado(int codigo) { // recuperar item do banco de dados return ExemploGabrilVerli.Listar().First(x => x.codigo == codigo); } } // Simulação da tabela no banco de dados public class ExemploGabrilVerli { // colunas do banco de dados public int codigo { get; set; } public string nomeReceita { get; set; } public string ingredientes { get; set; } public string modoDePreparo { get; set; } // simulação de select no banco de dados public static IList<ExemploGabrilVerli> Listar() { var lista = new List<ExemploGabrilVerli>(); lista.Add(new ExemploGabrilVerli() { codigo = 1, nomeReceita = "Receita 1", ingredientes = "Ingredientes 1", modoDePreparo = "Modo preparo 1" }); lista.Add(new ExemploGabrilVerli() { codigo = 2, nomeReceita = "Receita 2", ingredientes = "Ingredientes 2", modoDePreparo = "Modo preparo 2" }); lista.Add(new ExemploGabrilVerli() { codigo = 3, nomeReceita = "Receita 3", ingredientes = "Ingredientes 3", modoDePreparo = "Modo preparo 3" }); return lista; } }
Caso não resolva, deixe-nos saber.
Saudações,
Kallebe Lins, Kakaroo -
Olá Gabriel,
Caso sua necessidade seja Windows Forms segue exemplo abaixo:
public partial class testeGabrilVerli : Form { public testeGabrilVerli() { InitializeComponent(); } private void testeGabrilVerli_Load(object sender, EventArgs e) { // carrega o listbox listBox1.DisplayMember = "nomeReceita"; listBox1.ValueMember = "codigo"; listBox1.DataSource = ExemploGabrilVerli.Listar(); } private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { // recupera o item selecionado ExemploGabrilVerli itemSelecionado = recuperarItemSelecionado((int)listBox1.SelectedValue); // manipula o item selecionado richtxtIngredientes.Text = itemSelecionado.ingredientes; richtxtModoDePreparo.Text = itemSelecionado.modoDePreparo; } ExemploGabrilVerli recuperarItemSelecionado(int codigo) { // recuperar item do banco de dados return ExemploGabrilVerli.Listar().First(x => x.codigo == codigo); } } // Simulação da tabela no banco de dados public class ExemploGabrilVerli { // colunas do banco de dados public int codigo { get; set; } public string nomeReceita { get; set; } public string ingredientes { get; set; } public string modoDePreparo { get; set; } // simulação de select no banco de dados public static IList<ExemploGabrilVerli> Listar() { var lista = new List<ExemploGabrilVerli>(); lista.Add(new ExemploGabrilVerli() { codigo = 1, nomeReceita = "Receita 1", ingredientes = "Ingredientes 1", modoDePreparo = "Modo preparo 1" }); lista.Add(new ExemploGabrilVerli() { codigo = 2, nomeReceita = "Receita 2", ingredientes = "Ingredientes 2", modoDePreparo = "Modo preparo 2" }); lista.Add(new ExemploGabrilVerli() { codigo = 3, nomeReceita = "Receita 3", ingredientes = "Ingredientes 3", modoDePreparo = "Modo preparo 3" }); return lista; } }
Caso não resolva, deixe-nos saber.
Saudações,
Kallebe Lins, Kakaroo- Sugerido como Resposta Kallebe Lins segunda-feira, 16 de fevereiro de 2015 18:46