Compartilhar via


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

por Christian Wenz

Baixar PDF

Quando apenas uma opção de um conjunto pode ser selecionada, geralmente são usados botões rádio. 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; porém, elas não são exclusivas umas das outras. Este tutorial oferece o melhor das duas abordagens: caixas de seleção mutuamente exclusivas.

Visão geral

Quando apenas um de um conjunto de opções pode ser selecionado, botões de opção costumam ser 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: caixas de seleção que são mutuamente exclusivas.

Steps

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). Em todas as caixas de seleção no mesmo grupo, apenas uma pode ser selecionada por vez.

Vamos começar colocando duas caixas de seleção em uma nova página de 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. Os dois atributos de chave precisam ter o mesmo valor, assim como os atributos de valor dos elementos de botão de rádio do HTML devem ser idênticos para indicar o grupo ao qual pertencem. A propriedade TargetControlID do extensor aponta para o ID da caixa de seleção.

<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 ASP.NET Kit de Ferramentas de Controle AJAX:

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

Salve e execute a página: você pode marcar e desmarcar as caixas de seleção, mas em momento algum ambas podem estar marcadas ao mesmo tempo.

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)