Partilhar via


Criação de Caixas de Seleção Mutuamente Exclusivas (VB)

por Christian Wenz

Descarregar PDF

Quando só pode ser selecionada uma opção entre um conjunto, normalmente são usados botões de rádio. No entanto, há uma desvantagem: uma vez selecionado um botão de opção de um grupo, não é possível desmarcar todos os botões de opção. As caixas de seleção podem ser desmarcadas a qualquer momento, mas não são mutuamente exclusivas. Este tutorial oferece o melhor de ambas as abordagens: marcar caixas mutuamente exclusivas.

Descrição geral

Quando só pode ser selecionada uma opção entre um conjunto, normalmente são usados botões de rádio. No entanto, há uma desvantagem: uma vez que um botão de opção de 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, contudo, não são mutuamente exclusivas. Este tutorial oferece o melhor de ambas as abordagens: marcar caixas mutuamente exclusivas.

Passos

O ASP.NET AJAX Control Toolkit contém o extensor MutuallyExclusiveCheckBox. Isto permite aos programadores atribuir qualquer caixa de seleção a um nome de grupo (Key atributo). De todas as caixas de seleção dentro do mesmo grupo, apenas uma pode ser selecionada de cada vez.

Comecemos por colocar duas caixas de seleção numa nova página ASP.NET. Podem existir 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, deve colocar-se um controlo MutuallyExclusiveCheckBoxExtender na página. Ambos os atributos Chave precisam de ter o mesmo valor, tal como os atributos de valor dos elementos dos botões de rádio HTML devem ser idênticos para indicar o grupo a que 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" />

Finalmente, inclua o ASP.NET AJAX ScriptManager que é exigido por todos os elementos do ASP.NET AJAX Control Toolkit:

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

Guardar e executar a página: Pode assinalar e desmarcar ambas as caixas de seleção, no entanto, em nenhum momento é possível assinalar ambas as caixas simultaneamente.

Só se pode assinalar uma caixa de verificação de cada vez

Só pode ser assinalada uma caixa de seleção de cada vez (Clique para ver a imagem em tamanho real)