【发布时间】:2018-10-27 04:42:06
【问题描述】:
我遇到了一个问题,我的单选按钮只有两个可以操作,但所有三个按钮的制作方式都相同。
不确定我是否遗漏了什么或什么。这两个执行得很好,第三个,没有那么多。
将其他按钮设置为 null 是我的一位同事的建议,但仍然没有。为简单起见,我将其淡化为用颜色更改窗口的背景。我对这种语言不是很熟悉,因此感谢您的帮助。
private void Button_Click_1(object sender, RoutedEventArgs e)
{
RadioButton Green = new RadioButton();
RadioButton Red = new RadioButton();
RadioButton Blue = new RadioButton();
Green.Content = "Green";
Red.Content = "Red";
Blue.Content = "Blue";
LayoutRoot.Children.Add(Green);
LayoutRoot.Children.Add(Blue);
LayoutRoot.Children.Add(Red);
Green.Margin = new Thickness(X, Y, 0, 0);
Red.Margin = new Thickness(X, Y, 0, 0);
Blue.Margin = new Thickness(X, Y, 0, 0);
Green.Checked += delegate
{
Window.Background = Brushes.Green;
Red = null;
Blue = null;
};
Red.Checked += delegate
{
Window.Background = Brushes.Red;
Green = null;
Blue = null;
};
Blue.Checked += delegate
{
Window.Background = Brushes.Blue;
Green = null;
Red = null;
};
}
【问题讨论】:
-
没有复制。请创建minimal reproducible example。顺便说一句,设置
Red = null; Green = null;是无用的,并且可能会变得有害,如果在事件处理程序中使用这些捕获的局部变量来获取某些属性值
标签: c# wpf radio-button