无论如何都要从代码中引发RadioButton
已检查的路由事件,以便在父控件中处理它?</ p>
情况就是这样:
var radio = new RadioButton();
radio.IsChecked = true;
radio.RaiseEvent(new RoutedEventArgs(RadioButton.CheckedEvent));
第三行不起作用。
谷歌搜索,我找到了另一种基于RadioButtonAutomationPeer
的方式,但我找不到让它运行的方法。
有人有提示吗?
提前致谢。
答案 0 :(得分:0)
var radio = new RadioButton();
radio.CheckedChanged +=new EventHandler(radio_CheckedChanged);
radio.IsChecked = true;
private void radio_CheckedChanged(object sender, EventArgs e)
{
if (radio.Checked)
{
MessageBox.Show("true");
}
else
{
MessageBox.Show("false");
}
}
答案 1 :(得分:-1)
您可以通过编程方式获取Radio检查事件,但不能直接在页面/表单上添加。 你必须创建面板或其他一些控制器,你可以像这样添加这个单选按钮
<div>
<asp:Panel runat="server" ID="pnl1">
</asp:Panel>
</div>
protected void Page_Load(object sender, EventArgs e)
{
var radio = new RadioButton { Checked = false, AutoPostBack = true, Text = "Click" };
radio.CheckedChanged += radio_CheckedChanged;
pnl1.Controls.Add(radio);
}
void radio_CheckedChanged(object sender, EventArgs e)
{
throw new NotImplementedException();
}