WPF 中给 RadioButton 添加绑定值可以使用 RadioButton 的 GroupName 和 IsChecked 属性,以及绑定的数据模型属性。

首先,在 XAML 中定义多个 RadioButton,并为它们指定相同的 GroupName:

<StackPanel>
    <RadioButton Content='选项1' GroupName='MyGroup' IsChecked='{Binding IsOption1Selected}' />
    <RadioButton Content='选项2' GroupName='MyGroup' IsChecked='{Binding IsOption2Selected}' />
    <RadioButton Content='选项3' GroupName='MyGroup' IsChecked='{Binding IsOption3Selected}' />
</StackPanel>

然后,定义一个数据模型类,包含三个布尔类型的属性,分别对应三个 RadioButton 的选中状态:

public class MyDataModel : INotifyPropertyChanged
{
    private bool _isOption1Selected;
    public bool IsOption1Selected
    {
        get { return _isOption1Selected; }
        set
        {
            _isOption1Selected = value;
            OnPropertyChanged("IsOption1Selected");
        }
    }

    private bool _isOption2Selected;
    public bool IsOption2Selected
    {
        get { return _isOption2Selected; }
        set
        {
            _isOption2Selected = value;
            OnPropertyChanged("IsOption2Selected");
        }
    }

    private bool _isOption3Selected;
    public bool IsOption3Selected
    {
        get { return _isOption3Selected; }
        set
        {
            _isOption3Selected = value;
            OnPropertyChanged("IsOption3Selected");
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;
    protected void OnPropertyChanged(string propertyName)
    {
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }
}

最后,在窗口的代码中创建一个 MyDataModel 的实例,并将其设置为窗口的 DataContext:

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        DataContext = new MyDataModel();
    }
}

这样,当用户选择 RadioButton 时,对应的数据模型属性的值也会随之改变。可以在数据模型类中添加其他属性和方法,以处理 RadioButton 的选择操作。

WPF RadioButton 绑定值教程:实现单选功能

原文地址: https://www.cveoy.top/t/topic/mNGq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录