none
Como pegar uma dado/texto do BindingSource ? RRS feed

  • Discussão Geral

  • Bom Dia,

    Pessoal, estou com o seguinte problema.

    Tenho uma tabela na base de dados MySQL, chamada Login, nesta tabela possuo os seguintes campos:

    ------------------------------

    idLogin int primary key auto_increment

    idColaborador int

    usuario varchar(250)

    senha varchar(250)

    ----------------------------

    E outra tabela chamada Colaborador, com os seguintes campos:

    ----------------------------

    idColaborador int primary key auto_increment

    nome varchar(250)

    sobrenome varchar(250)

    ----------------------------

    Utilizando Linq o programa faz a consulta no banco de dados, passa o resultado para o BindingSource e para o BindingNavigator.

    No Formulario/Layout tenho os seguintes campos/Label:

    -----------------------------------------

    lbUsuario

    lbIdLogin

    lbIdColaborador

    lbNomeColaborador

    lbSobrenomeColaborador

    --------------------------------------------

    O codigo esta consultando a tabela login, exibindo as informações nas labels, mas tambem preciso que seja feito uma consulta na tabela colaborador utilizando o valor preenchido na label lbIdColaborador para encontrar e exibir o nome do colaborador, mas quando eu passo para ele usar o valor da label, a consulta não retorna nada.

    Como posso contornar este probrema ?

    -------------------------------------------

    Segue codigo abaixo do projeto;

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace Tahou_GMS.View.TI
    {
        public partial class Usuario : Form
        {
            string nome_software = Classes.Conexao.nome_software;
            public Usuario()
            {
                InitializeComponent();
                Text = nome_software + " - Usuários";
    
                ConsultarUsuarios(bs);
                ConsultarColaborador();
            }
    
            private void btnOk_Click(object sender, EventArgs e)
            {
                this.Dispose();
            }
    
            private void btnAdicionarUsuario_Click(object sender, EventArgs e)
            {
                try
                {
                    Adicionar_Usuario au = new Adicionar_Usuario();
                    au.ShowDialog();
                    bs.ResetBindings(true);
                    ConsultarUsuarios(bs);
                }
                catch (Exception) { }
            }
            public void ConsultarUsuarios(BindingSource bs)
            {
                try
                {
                    using (var db = new Model.tahou_gmsEntidades())
                    {
                        Classes.Conexao con = new Classes.Conexao();
    
                        db.Database.Connection.ConnectionString = con.Open();
    
                        var sql = from linha in db.login orderby linha.idLogin select linha;
    
                        bs.DataSource = sql.ToList();
                        bn.BindingSource = bs;
    
                        lbUsuario.DataBindings.Add(new Binding("text", bs, "usuario"));
                        lbPrivilegio.DataBindings.Add(new Binding("text", bs, "privilegios"));
                        lbStatus.DataBindings.Add(new Binding("text", bs, "status"));
                        lbDataUltimoAcesso.DataBindings.Add(new Binding("text", bs, "ultimo_acesso"));
                        lbIdColaborador.DataBindings.Add(new Binding("text", bs, "idColaborador"));                   
                        lbIdOculta.DataBindings.Add(new Binding("text", bs, "idLogin"));
                    }
                }
                catch(Exception)
                {
    
                }
            }
            private void ConsultarColaborador()
            {
                try
                {
                    using (var db = new Model.tahou_gmsEntidades())
                    {
                        Classes.Conexao con = new Classes.Conexao();
    
                        db.Database.Connection.ConnectionString = con.Open();
    
                        var sql = (from linha in db.colaborador where linha.idColaborador.Equals(lbIdColaborador.Text) select linha).First();
    
                        lbColaborador.Text = sql.nome.ToString() + " " + sql.sobrenome.ToString();
                        lbSetor.Text = sql.setor.ToString();
                        lbFuncao.Text = sql.funcao.ToString();
                    }
                }
                catch(Exception ex)
                {
                    MessageBox.Show(lbIdColaborador.Text+"\n\nErro:\n"+ex.Message);
                }
            }
        }
    }
    

    sábado, 9 de julho de 2016 15:10