Tôi đã ràng buộc các DataContext
của Window sau để mã phía sau để cho tôi một MVVM style
để chứng minh hành vi này:Nút radio WPF - MVVM - ràng buộc dường như chết?
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300"
DataContext="{Binding RelativeSource={RelativeSource Self}}">
<StackPanel>
<RadioButton GroupName="test" Content="Monkey" IsChecked="{Binding IsMonkey}"/>
<RadioButton GroupName="test" Content="Turtle" IsChecked="{Binding IsTurtle}" />
</StackPanel>
</Window>
Heres mã sau:
public partial class Window1
{
public Window1()
{
InitializeComponent();
}
private bool _isMonkey;
public bool IsMonkey
{
get { return _isMonkey; }
set
{
_isMonkey = value;
}
}
private bool _isTurtle;
public bool IsTurtle
{
get { return _isTurtle; }
set
{
_isTurtle = value;
}
}
}
Đưa một breakpoint trên tập hợp của IsMonkey
và IsTurtle
và sau đó chạy ứng dụng và chọn IsMonkey
và IsTurtle
sau mỗi khác tôi thấy rằng nó hoạt động cho lựa chọn đầu tiên của mỗi điều khiển, trên lựa chọn thứ hai ràng buộc b Rò rỉ và các điểm ngắt không còn được kích hoạt?
Bất kỳ ai cũng có thể chỉ cho tôi đúng hướng không?
Xin chào, cảm ơn - giúp nó hoạt động thông qua các tên nhóm khác nhau như bạn đã đề xuất và một số mã trên thuộc tính. Mặc dù nó gây phiền nhiễu, vì nó là cùng một nhóm - vì vậy tôi muốn sử dụng chức năng đó, nhưng nó sẽ không cho phép tôi. –
'cung cấp cho các nhóm RadioButtons các tên nhóm khác nhau' Chúa ơi, Bạn đã cứu mông của tôi. – user1112008