none
Carregamento de RadioButton e Checkbox conforme valores do banco de dados RRS feed

  • Pergunta

  •  

     

    Olá Pessoal!

     

    Gostaria de aprender mais sobre Tratamento de Interface em WebForms.

     

    Pesquisei sobre, mas não encontrei artigos explicando como se implementa o seguinte:

     

    * carregamento um radiobutton ou checkbox com os valores que estão armazenados no banco de dados, recuperando o valor que está registrado na base cada vez que o formulário for aberto, exibindo os respectivos valores marcados cfe estao no bd. 

     

    * e outras situações que envolvem controles web e a interface... 

     

     

    Peço por gentileza que consigam me conseguir links, material, ou exemplo  sobre isso.

     

     

    Aguardo resposta, espero ajuda...

     

    sexta-feira, 9 de janeiro de 2009 16:40

Respostas

  • Eh so setar a variavel SelectedValue

     

    CheckBoxList1.SelectedValue = (valor do banco de dados)

    CheckBoxList1.SelectedValue = 70

     

    vc deve estar querendo fazer como no Windows Form.... que eh automatico... na Web nao se faz isso... pois se trabalhar Offline com o banco...

     

     

     

     

     

     

    terça-feira, 13 de janeiro de 2009 13:49
    Moderador
  • sim... seja um datatable... datareader.... uma entidade do linq.... vai depender de como vc acessa seus dados

    terça-feira, 13 de janeiro de 2009 15:48
    Moderador

Todas as Respostas

  • Para esses casos é mais facil usar o RadioButtonList e o CheckBoxList

     

    um exemplo que carrega uma lista de documentos... me retorna o codigo do documento selecionado:

     

    Code Snippet

    <asp:RadioButtonList ID="CheckBoxList1" runat="server" DataSourceID="SqlDataSource1" ataTextField="DESCRICAO" DataValueField="PK_DOCUMENTOS">

    </asp:RadioButtonList>

     

    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MinhaConnectionString %>" SelectCommand="SELECT * FROM [DOCUMENTOS]"></asp:SqlDataSource>

     

    <asp:Button ID="Button1" runat="server" Text="Button" />

     

    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

     

     

     

    Partial Class _Default

    Inherits System.Web.UI.Page

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

    TextBox1.Text = CheckBoxList1.SelectedValue()

    End Sub

    End Class

     

     

    No meu caso a pagina fico assim:

     

    terça-feira, 13 de janeiro de 2009 00:27
    Moderador
  •  

     

     

    Sim... concordo com o que apresentou, mas como podemos carregar (já vindo marcado) conforme o que está guardado / setado no banco de dados ??

     

    O Exemplo que ilustra melhor a minha dúvida é o carregamento do valor que está salvo na base. (Este valor é o que o usuário marcou e precisa ser apresentada essa opção marcada na próxima vez em que o webform for exibido). 

     

    A funcionalidade que procuro aprender é como implementar para que já venha marcado a opção tanto de um RadioButtonList ou de um CheckBoxList de acordo com o que está gravado no banco de dados.

     

    Aguardo Ajuda.

     

    terça-feira, 13 de janeiro de 2009 11:32
  • Magno, tente fazer um foreach no evento DataBound do RadioButtonList.

    Exemplo: abaixo eu fiz com checkboxlist mas a estrutura é praticamente a mesma

        protected void cblTeste_DataBound(object sender, EventArgs e)
        {
            foreach(ListItem it in cblTeste.Items)
            {
                if (it.Value == "11")
                {
                    it.Selected = true;
                }
            }
        }


    Abraço

    Estevam
    terça-feira, 13 de janeiro de 2009 13:25
  •  

     

    ok... mas dessa maneira está especificando condição para uma determinada opção. Porém, o que eu gostaria de saber é como carregar automático buscando do banco qual opcao virá marcada e exibindo no webform.

     

    Dessa maneira que implementou funciona dessa maneira? Preciso o q vem marcado pela base de dados...

     

     

    Aguardo retorno...

     

     

    terça-feira, 13 de janeiro de 2009 13:35
  • Eh so setar a variavel SelectedValue

     

    CheckBoxList1.SelectedValue = (valor do banco de dados)

    CheckBoxList1.SelectedValue = 70

     

    vc deve estar querendo fazer como no Windows Form.... que eh automatico... na Web nao se faz isso... pois se trabalhar Offline com o banco...

     

     

     

     

     

     

    terça-feira, 13 de janeiro de 2009 13:49
    Moderador
  •  

     

    Concordo contigo...  Sendo assim:

     

    CheckBoxList1.SelectedValue = (valor do banco de dados)

     

    (valor do banco de dados) pode ser um objeto de uma classe que contém um valor atribuído a este objeto da classe. Concorda ?

     

                                                                                                           

    terça-feira, 13 de janeiro de 2009 13:57
  • sim... seja um datatable... datareader.... uma entidade do linq.... vai depender de como vc acessa seus dados

    terça-feira, 13 de janeiro de 2009 15:48
    Moderador