Dúvida sobre o CHECKBOXLIST
Solicito auxilio na utilização do componente CHECKBOXLIST
Fiz o codigo abaixo, mas não estou conseguindo tratar qdo o CHECKBOXLIST esta clicado ou true.
// ************************************************
public partial class POPUP_Escolha : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
PreencheLista();
}
private void PreencheLista()
{
string sSQL = "Select cd_usuario, nm_usuario from tb_usuario ";
DataAccess da = new DataAccess();
da.OpenConection(); DataTable dt = da.ExecuteReader(new SqlCommand(sSQL)); cbkUsuarios.DataSource = dt;
cbkUsuarios.DataValueField = "cd_usuario";
cbkUsuarios.DataTextField = "nm_usuario";
cbkUsuarios.DataBind();
}
protected void cbkUsuarios_SelectedIndexChanged(object sender, EventArgs e)
{
int i;
ListBox1.Items.Clear();
for (i=0;i<cbkUsuarios.Items.Count -1;i++)
{
if (cbkUsuarios.Items[i].Selected) // Não esta entrando aqui...
{
ListBox1.Items.Add(cbkUsuarios.Items[i].Text);
}
}
}
}
Atte Sérgio
{
protected void Page_Load(object sender, EventArgs e)
{
PreencheLista();
}
private void PreencheLista()
{
string sSQL = "Select cd_usuario, nm_usuario from tb_usuario ";
DataAccess da = new DataAccess();
da.OpenConection(); DataTable dt = da.ExecuteReader(new SqlCommand(sSQL)); cbkUsuarios.DataSource = dt;
cbkUsuarios.DataValueField = "cd_usuario";
cbkUsuarios.DataTextField = "nm_usuario";
cbkUsuarios.DataBind();
}
protected void cbkUsuarios_SelectedIndexChanged(object sender, EventArgs e)
{
int i;
ListBox1.Items.Clear();
for (i=0;i<cbkUsuarios.Items.Count -1;i++)
{
if (cbkUsuarios.Items[i].Selected) // Não esta entrando aqui...
{
ListBox1.Items.Add(cbkUsuarios.Items[i].Text);
}
}
}
}
Atte Sérgio
Sergio Santos
Curtidas 0
Respostas
Fabio Mans
13/02/2009
Você colocou como Auto PostBack = True ?
GOSTEI 0
Sergio Santos
13/02/2009
Sim.
GOSTEI 0
Fabio Mans
13/02/2009
Veja se o código abaixo ajuda.<body> <form id="form1" runat="server">
<div>
</div>
<asp:CheckBoxList ID="cbkUsuarios" runat="server">
<asp:ListItem>a</asp:ListItem>
<asp:ListItem>b</asp:ListItem>
<asp:ListItem>c</asp:ListItem>
<asp:ListItem>d</asp:ListItem>
<asp:ListItem>e</asp:ListItem>
<asp:ListItem>f</asp:ListItem>
</asp:CheckBoxList>
<br />
<br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>
</body>
=============================================protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
foreach (ListItem item in cbkUsuarios.Items)
{
// O item está selecionado?
if (item.Selected)
Response.Write(item + "<br/>");
}
}
<div>
</div>
<asp:CheckBoxList ID="cbkUsuarios" runat="server">
<asp:ListItem>a</asp:ListItem>
<asp:ListItem>b</asp:ListItem>
<asp:ListItem>c</asp:ListItem>
<asp:ListItem>d</asp:ListItem>
<asp:ListItem>e</asp:ListItem>
<asp:ListItem>f</asp:ListItem>
</asp:CheckBoxList>
<br />
<br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>
</body>
=============================================protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
foreach (ListItem item in cbkUsuarios.Items)
{
// O item está selecionado?
if (item.Selected)
Response.Write(item + "<br/>");
}
}
GOSTEI 0
Sergio Santos
13/02/2009
Fabio,
Mas como implemento isto no CHECKBOXLIST, pois, os itens para o meu TEXTBOX serão dinamicos e virão deuma tabela de usuarios.
Atte
Sérgio
GOSTEI 0
Fabio Mans
13/02/2009
TextBox??? Não entendi, não tem TextBox no exemplo que mandou, eu vejo um checkboxlist e um ListBox, pelo que entendi para cada item (texto) que você selecionar, você adiciona no Listbox. Correto? Siga o exemplo abaixo.
GOSTEI 0
Sergio Santos
13/02/2009
Desculpe Fabio,
No texto abaixo
"Mas como implemento isto no CHECKBOXLIST, pois, os itens para o meu TEXTBOX serão dinamicos e virão deuma tabela de usuarios."
Mas como implemento isto no CHECKBOXLIST, pois, os TEXTOS dos itens CHECKBOX, serão dinamicos e virão deu ma tabela de usuarios, onde a qtde sempre irá mudar, nunca será fixa". Pelo que entendi, basta eu setar o CHECKBOXLIST para MULTI que ele passa a trabalhar como um array ? Pelo seu exemplo, o que entendi é que é teria vários CHECKBOX (unicos, soltos) e qdo eu clicasse neles, através do metodo SelectOnChance eu passaria o texto para a ultima posição do LISTBOX. Se for isto, volto a frizar, que eu não estou usando o CHECKBOX simples, e sim o CHECKBOXLIST, que parece ser do tipo array. A minha idéia é poder ter pr exemplo 20 opções, e marca 10 aleatóriamente destas 20, e depois varrer o Array do CHECKBOXLIST, pegando as selecionadas, e depois jogar num outro componente como o LISTBOX. Obrigado
Mas como implemento isto no CHECKBOXLIST, pois, os TEXTOS dos itens CHECKBOX, serão dinamicos e virão deu ma tabela de usuarios, onde a qtde sempre irá mudar, nunca será fixa". Pelo que entendi, basta eu setar o CHECKBOXLIST para MULTI que ele passa a trabalhar como um array ? Pelo seu exemplo, o que entendi é que é teria vários CHECKBOX (unicos, soltos) e qdo eu clicasse neles, através do metodo SelectOnChance eu passaria o texto para a ultima posição do LISTBOX. Se for isto, volto a frizar, que eu não estou usando o CHECKBOX simples, e sim o CHECKBOXLIST, que parece ser do tipo array. A minha idéia é poder ter pr exemplo 20 opções, e marca 10 aleatóriamente destas 20, e depois varrer o Array do CHECKBOXLIST, pegando as selecionadas, e depois jogar num outro componente como o LISTBOX. Obrigado
GOSTEI 0
Sergio Santos
13/02/2009
Alguma solução para o meu problema?
GOSTEI 0
Fabio Mans
13/02/2009
Sérgio sinceramente eu não estou conseguindo entender o que você precisa, você consegue mostrar uma tela ou fazer um vídeo do que precisa?
Está confuso, você fala do Checkboxlist que te mostrei como é utilizado, você fala do ListBox e mostra um TextBox acho que eu ou você está confundindo alguma coisa, para fazer o vídeo utilize o Software Camtasia. Assim vai ficar mais fácil para nós dois.
Obrigado.
GOSTEI 0
Sergio Santos
13/02/2009
Fabio
Como faço para te mandar uma imagem?
Abs
Sérgio
GOSTEI 0
Fabio Mans
13/02/2009
Para inserir imagens no seu comentário, utilize o botão da caixa de texto
Fabio
GOSTEI 0