您的位置:首页 > 其它

扩展RadioButton,实现在不同容器中互斥选择

2009-06-06 17:05 309 查看
扩展RadioButton,增加GroupName属性(默认为String.Empty),如果GroupName相同,则不同容器中的RadioButton也可以互斥选择。代码如下:

public class RadioButtonEx : RadioButton
{
private string _groupName = string.Empty; public string GroupName
{
get { return _groupName; }
set { _groupName = value; }
} protected override void OnClick(EventArgs e)
{
UnCheckedRadioButton(this.TopLevelControl);
this.Checked = true;
base.OnClick(e);
} private void UnCheckedRadioButton(Control parent)
{
if (parent != null && parent.Controls.Count > 0)
{
foreach (Control ctl in parent.Controls)
{
UnCheckedRadioButton(ctl);
if (ctl is RadioButtonEx)
{
RadioButtonEx btn = (RadioButtonEx)ctl;
if (btn.GroupName.Equals(this.GroupName))
{
btn.Checked = false;
}
}
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: