none
Label com valor fixo do Banco de Dados RRS feed

  • Pergunta

  • Bom dia,

    Estou querendo preencher uma label com um valor do banco de dados. Estou trabalhando com duas labels na pagina e um dropdownlist, o conteúdo das labels é alterado conforme o valor selecionado no dropdownlist, porém eu precisava ou definir um valor fixo para o dropdownlist e deixa-lo invisível para o usuário, ou eliminar o dropdownlist e utilizar somente as labels para exibição do conteúdo na página, impondo nelas um valor fixo mas que sempre fosse atualizado do banco.

    Estou utilizando asp .net com c#  e banco de MySQL, vi alguns tópicos , mas nenhum deles realmente me ajudou.

    Se alguém puder me ajudar, ou em dar um exemplo de coo fazer eu agradeço muito.


    Atenciosamente, Nathalia Santana

    quinta-feira, 19 de setembro de 2013 14:10

Respostas

  • Nathalia você já conseguiu fazer sua Select no banco de dados se sim faça isso :

    SuaLabel.Text = Seucampo["NomeSeucampo"].ToString();

    Se for util marque...

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 14:45
    • Não Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 14:45
    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 14:19
  • Se você pretende alterar o text do seu label assim conforme a seleção do seu DDL, utilize o evento SelectedIndexChanged do comboBox, e dentro desse evento você pode alterar o text da sua label, se acordo com o item selecionado no combo. 

    lblTeste.text = ddlTeste.selectedItem.Text.Trim();

    Mais ou menos como o exemplo a cima. 

    No exemplo o label irá receber o valor selecionado no combo. 

    Espero ter ajudado. 

    Caso ajudou, marque. 

    Abraço.


    Good Luck, Fernando Mamprin

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 14:53
  • Se você pretende alterar o text do seu label assim conforme a seleção do seu DDL, utilize o evento SelectedIndexChanged do comboBox, e dentro desse evento você pode alterar o text da sua label, se acordo com o item selecionado no combo. 

    lblTeste.text = ddlTeste.selectedItem.Text.Trim();

    Mais ou menos como o exemplo a cima. 

    No exemplo o label irá receber o valor selecionado no combo. 

    Espero ter ajudado. 

    Caso ajudou, marque. 

    Abraço.


    Good Luck, Fernando Mamprin

    Então Fernando o caso é esse desse jeito que esta está funcionando, ele mostra nas labels os valores correspondentes ao ID selecionado no ddl, o que eu preciso é trava um valor no ddl e deixa-lo invisivel para que o usuario não posso alterar o id do conteudo, ou fazer isso com as labels mas sem o ddl, entendeu? Tipo eliminar o ddl e deixar as labels recebendo informação direto do banco tipo um?

    label1.text="valor do select"

    Como se eu fizesse um select assim no banco 

    Select NomeDoCampo from NomeDaTabela where id=ValorQueÉSeráMostradoNestaPágina; É isso que não estou sabendo como fazer, como escolher uma linha pra inserir direto na tabela, ou inserir no ddl e deixar ele invisível para o usuário.


    Atenciosamente, Nathalia Santana

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 14:59
  • Nathalia, com o que você está querendo fazer, você terá de deixar fixo o valor a ser atribuído para sua Label, ou seja, o item referente aquela linha e coluna sempre sera o da posição que você definir. 

    Esse é o correto?

    Então faça assim: 

     List<string> titulos = new List<string>();
     for (int i = 0; i < dat.Rows.Count; i++)
    {
        lblTeste.Text = dat.Rows[i][0].ToString();
        break;
    }

    Você irá pegar o primeiro item do seu select. 

    Se for isso acho solucionou o seu problema.

    Caso sim, marque. 

    Abraço.


    Good Luck, Fernando Mamprin

    • Sugerido como Resposta JoaoMarques- quinta-feira, 19 de setembro de 2013 17:46
    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 16:55
  • Isso mesmo nathalia o Fernando deu a solução, somente para completar se você necessita tanto de somente um dado faça seu SELECT * from suatabela e use WHERE id = tal para vir uma linha somente se existir PK.....

    assim pra você ficaria menos complicado sei la fica assim :

    suaLabel.Text = seudatatable.Rows[0].["nomedacoluna"];

    É isso...

    Se for util marque...

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 17:07

Todas as Respostas

  • Nathalia você já conseguiu fazer sua Select no banco de dados se sim faça isso :

    SuaLabel.Text = Seucampo["NomeSeucampo"].ToString();

    Se for util marque...

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 14:45
    • Não Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 14:45
    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 14:19
  • Nathalia você já conseguiu fazer sua Select no banco de dados se sim faça isso :

    SuaLabel.Text = Seucampo["NomeSeucampo"].ToString();

    Se for util marque...

    No caso meu código esta assim em uma das paginas onde será exibido o conteúdo

    namespace TestesdeEditor
    {
        public partial class Teste : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    DroplistPag.DataSource = BLL.BuscaTitulo();
                    DroplistPag.DataBind();
                }
                    DataTable dtPag = BLL.Busca_Pagina(DroplistPag.SelectedItem.Text);
                    lblTitulo.Text = dtPag.Rows[0][0].ToString();
                    lblConteudo.Text = dtPag.Rows[0][1].ToString();
            }
        }
    }

    E aqui esta feito o select:

    internal static DataTable Busca_Pagina(string pk)
            {
                string query = "SELECT titulo, conteudo FROM paginas WHERE idpaginas = @Pk_Id";

                MySqlCommand cmd = new MySqlCommand(query.ToString(), DAL.Conexao());
                cmd.Parameters.AddWithValue("@Pk_Id", pk);
                DataTable dat = new DataTable();
                MySqlDataAdapter da = new MySqlDataAdapter(cmd);
                try
                {
                    cmd.Connection.Open();
                    da.Fill(dat);
                }
                catch
                {
                    throw new Exception();
                }
                finally
                {
                    cmd.Connection.Close();
                }
                return dat;
            }


            internal static List<string> BuscaTitulo()
            {
                string query = "SELECT idpaginas FROM paginas";

                MySqlCommand cmd = new MySqlCommand(query.ToString(), DAL.Conexao());
                DataTable dat = new DataTable();
                MySqlDataAdapter da = new MySqlDataAdapter(cmd);
                try
                {
                    cmd.Connection.Open();
                    da.Fill(dat);
                }
                catch
                {
                    throw new Exception();
                }
                finally
                {
                    cmd.Connection.Close();
                }
                List<string> titulos = new List<string>();
                for (int i = 0; i < dat.Rows.Count; i++)
                    titulos.Add(dat.Rows[i][0].ToString());
                    return titulos;
            }

    No caso eu retiraria o dropdownlist do Busca_Pagina e colocaria o código que vc me passou? Como eu definiria qual a linha que ele deve pegar? Por exemplo sempre mostra a linha 5 das colunas na pagina teste, e a linha 3 das colunas na pagina Exemplo??


    Atenciosamente, Nathalia Santana

    quinta-feira, 19 de setembro de 2013 14:44
  • Se você pretende alterar o text do seu label assim conforme a seleção do seu DDL, utilize o evento SelectedIndexChanged do comboBox, e dentro desse evento você pode alterar o text da sua label, se acordo com o item selecionado no combo. 

    lblTeste.text = ddlTeste.selectedItem.Text.Trim();

    Mais ou menos como o exemplo a cima. 

    No exemplo o label irá receber o valor selecionado no combo. 

    Espero ter ajudado. 

    Caso ajudou, marque. 

    Abraço.


    Good Luck, Fernando Mamprin

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 14:53
  • Se você pretende alterar o text do seu label assim conforme a seleção do seu DDL, utilize o evento SelectedIndexChanged do comboBox, e dentro desse evento você pode alterar o text da sua label, se acordo com o item selecionado no combo. 

    lblTeste.text = ddlTeste.selectedItem.Text.Trim();

    Mais ou menos como o exemplo a cima. 

    No exemplo o label irá receber o valor selecionado no combo. 

    Espero ter ajudado. 

    Caso ajudou, marque. 

    Abraço.


    Good Luck, Fernando Mamprin

    Então Fernando o caso é esse desse jeito que esta está funcionando, ele mostra nas labels os valores correspondentes ao ID selecionado no ddl, o que eu preciso é trava um valor no ddl e deixa-lo invisivel para que o usuario não posso alterar o id do conteudo, ou fazer isso com as labels mas sem o ddl, entendeu? Tipo eliminar o ddl e deixar as labels recebendo informação direto do banco tipo um?

    label1.text="valor do select"

    Como se eu fizesse um select assim no banco 

    Select NomeDoCampo from NomeDaTabela where id=ValorQueÉSeráMostradoNestaPágina; É isso que não estou sabendo como fazer, como escolher uma linha pra inserir direto na tabela, ou inserir no ddl e deixar ele invisível para o usuário.


    Atenciosamente, Nathalia Santana

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 14:59
  • Nathalia, com o que você está querendo fazer, você terá de deixar fixo o valor a ser atribuído para sua Label, ou seja, o item referente aquela linha e coluna sempre sera o da posição que você definir. 

    Esse é o correto?

    Então faça assim: 

     List<string> titulos = new List<string>();
     for (int i = 0; i < dat.Rows.Count; i++)
    {
        lblTeste.Text = dat.Rows[i][0].ToString();
        break;
    }

    Você irá pegar o primeiro item do seu select. 

    Se for isso acho solucionou o seu problema.

    Caso sim, marque. 

    Abraço.


    Good Luck, Fernando Mamprin

    • Sugerido como Resposta JoaoMarques- quinta-feira, 19 de setembro de 2013 17:46
    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 16:55
  • Obrigada Fernando, vou testar aqui, se funcionar eu já marco. Obrigada.

    Atenciosamente, Nathalia Santana

    quinta-feira, 19 de setembro de 2013 17:05
  • Isso mesmo nathalia o Fernando deu a solução, somente para completar se você necessita tanto de somente um dado faça seu SELECT * from suatabela e use WHERE id = tal para vir uma linha somente se existir PK.....

    assim pra você ficaria menos complicado sei la fica assim :

    suaLabel.Text = seudatatable.Rows[0].["nomedacoluna"];

    É isso...

    Se for util marque...

    • Marcado como Resposta Nathalia Santana quinta-feira, 19 de setembro de 2013 19:47
    quinta-feira, 19 de setembro de 2013 17:07