//定义属性,方法
List<RadioButton> RadioButtonMethod;
private List<RadioButton> CreateRadioButtonGroupObjList(string p_groupName, string[] p_contents, string[] p_names, string[] p_tags, double[] p_widths, double[] p_heights, RoutedEventHandler p_routedEventHandler) {
List<RadioButton> list = new List<RadioButton>();
for (int i = 0; i < p_contents.Length; i++) {
list.Add(CreateRadioButton(p_contents[i], p_groupName, p_names[i], p_tags[i], p_widths[i], p_heights[i], p_routedEventHandler));
}
return list;
}
private RadioButton CreateRadioButton(string p_content, string p_groupName, string p_name, string p_tag, double p_width, double p_height, RoutedEventHandler p_routedEventHandler) {
RadioButton newObj = new RadioButton();
newObj.Content = p_content;
newObj.GroupName = p_groupName;
newObj.Name = p_name;
newObj.Width = p_width;
newObj.Height = p_height;
newObj.Tag = p_tag;
newObj.Click += p_routedEventHandler;
return newObj;
}
private void DrawRadioButtonGroup(Canvas p_canvas, List<RadioButton> p_radioButtonGroup, double p_left, double p_top, double p_margins, bool p_isHorizontal) {
for (int c = 0; c < p_radioButtonGroup.Count; c++) {
RadioButton obj = p_radioButtonGroup[c];
if (p_isHorizontal) {
Canvas.SetTop(obj, p_top);
Canvas.SetLeft(obj, p_left + c * obj.Width + c * p_margins);
} else {
Canvas.SetTop(obj, p_top + c * obj.Height + c * p_margins);
Canvas.SetLeft(obj, p_left);
}
p_canvas.Children.Add(obj);
}
}
private void RadioButton_Method_Click(object sender, RoutedEventArgs e) {
RadioButton obj = (RadioButton)sender;
obj.IsChecked = true;
}
//private void SetRadioButtonGroupChecked(List<RadioButton> p_radioButtonGroup, int p_index) {
// if (p_radioButtonGroup != null && p_radioButtonGroup.Count > 0) {
// foreach (RadioButton obj in p_radioButtonGroup) {
// if (obj.Tag.ToString() == p_index.ToString()) {
// obj.IsChecked = true;
// } else {
// obj.IsChecked = false;
// }
// }
// }
//}
调用
//添加请求方式单选按钮
RadioButtonMethod = CreateRadioButtonGroupObjList("RadioButton_Method", new string[] { "POST", "GET" }, new string[] { "", "" }, new string[] { "0", "1" }, new double[] { 60, 60 }, new double[] { 60, 60, }, RadioButton_Method_Click);
DrawRadioButtonGroup(Canvas_Name, RadioButtonMethod, 400, 240, 5, true);