Compartilhar via


Criação de caixas de seleção mutuamente exclusivas (VB)

por Christian Wenz

Baixar PDF

Quando apenas um de um conjunto de opções pode ser selecionado, os botões de opção geralmente são usados. No entanto, há uma desvantagem: depois que um botão de opção em um grupo é selecionado, não é possível desmarcar todos os botões de opção. As caixas de seleção podem ser desmarcadas a qualquer momento, no entanto, não são mutuamente exclusivas. Este tutorial fornece o melhor de ambas as abordagens: marcar caixas mutuamente exclusivas.

Visão geral

Quando apenas um de um conjunto de opções pode ser selecionado, os botões de opção geralmente são usados. No entanto, há uma desvantagem: depois que um botão de opção em um grupo é selecionado, não é possível desmarcar todos os botões de opção. As caixas de seleção podem ser desmarcadas a qualquer momento, no entanto, não são mutuamente exclusivas. Este tutorial fornece o melhor de ambas as abordagens: marcar caixas mutuamente exclusivas.

Etapas

O ASP.NET Kit de Ferramentas de Controle AJAX contém o extensor MutuallyExclusiveCheckBox. Isso permite que os programadores atribuam qualquer caixa de seleção a um nome de grupo (Key atributo). De todas as caixas marcar dentro do mesmo grupo, apenas uma pode ser selecionada ao mesmo tempo.

Vamos começar colocando duas caixas marcar em uma nova página ASP.NET. Pode haver mais, mas dois deles são suficientes para demonstrar o princípio:

<asp:CheckBox ID="cbYes" runat="server" />Yes
<asp:CheckBox ID="cbNo" runat="server" />No

Para ambas as caixas de seleção, um controle MutuallyExclusiveCheckBoxExtender deve ser colocado na página. Ambos os atributos Key precisam ter o mesmo valor, assim como os atributos de valor dos elementos do botão de opção HTML devem ser idênticos para indicar o grupo ao qual pertencem. A propriedade TargetControlID do extensor aponta para a ID da caixa marcar.

<ajaxToolkit:MutuallyExclusiveCheckBoxExtender ID="mecbe1" runat="server"
 TargetControlID="cbYes" Key="YesNo" />
<ajaxToolkit:MutuallyExclusiveCheckBoxExtender ID="mecbe2" runat="server"
 TargetControlID="cbNo" Key="YesNo" />

Por fim, inclua o ASP.NET AJAX ScriptManager que é exigido por todos os elementos do kit de ferramentas de controle AJAX do ASP.NET:

<asp:ScriptManager ID="asm" runat="server" />

Salvar e executar a página: você pode marcar e desmarcar ambas as caixas marcar, no entanto, em nenhum momento as caixas marcar podem ser marcadas.

Somente uma caixa de seleção pode ser marcada por vez

Somente uma caixa de seleção pode ser marcada por vez (Clique para exibir a imagem em tamanho real)