Optionsfeldgruppe XAML

7

Ich habe sechs Optionsfelder in XAML, und ich möchte zwei Gruppen erstellen. Es scheint, dass WPF kein Radiobutton-Gruppenelement hat, also wie kann ich das tun?

    
ojsim 19.05.2011, 09:32
quelle

2 Antworten

16

Sie müssen einen Gruppennamen für das Element angeben.

%Vor%     
BitKFu 19.05.2011, 09:35
quelle
10

BitKFus Vorschlag, die Eigenschaft GroupName zu verwenden, wird funktionieren, aber es gibt einen Vorbehalt. Wenn Sie Gruppennamen verwenden, wird der Bereich für Gruppen RadioButton anders.

Wenn Sie ein UserControl mit 3 RadioButtons alle mit einem GroupName von "MyRadioGroup" erstellen und 2 solche Steuerelemente in Ihrem Window platzieren, werden Sie feststellen, dass alle 6 RadioButton s sich so verhalten, wie sie sind eine Gruppe.

Das passiert, weil, wenn RadioButton andere RadioButton s aktualisiert, es normalerweise nur RadioButton s anpasst, die Kinder seines unmittelbaren Elternteils DependencyObject sind. Wenn jedoch GroupName verwendet wird, wird der Bereich auf den Stamm Visual ( Window ) erweitert, und alle RadioButton s werden unter diesem Stamm mit dem gleichen GroupName angepasst.

Manchmal ist es besser, sie einfach durch ein zusätzliches Panel zu trennen.

    
Joel B Fant 19.05.2011 17:45
quelle

Tags und Links