我正在尝试创建大量的复选框,并感觉如果我在xaml中创建它们效率不高。
是否可以动态创建复选框并仅在C#中指定组框/网格及其位置?我知道我们可以动态创建复选框,但我不太确定如何通过c#管理其位置。
我对WPF比较陌生,谢谢!
答案 0 :(得分:2)
@ user2584960“一旦我创建了它们,我怎么能引用它们?我被卡住了......我在给孩子们添加之前给了复选框一个名字,但是不能引用它们......”
我只能想象您正在尝试:
Checkbox c = panel.Children.Add(new Checkbox());
当您添加到面板时,您没有返回任何内容,因此您无法“引用”复选框类。
正如@Alex G所说,他的答案显示了如何添加到内容窗口,如果您需要设置参考,只需创建一个新类,然后将其添加到窗口:
StackPanel panel = new StackPanel();
this.Content = panel;
CheckBox c = new CheckBox();
c.IsChecked = true;
//you Could create a loop to loop all of the list checkboxes to add them.
panel.Children.Add(c);
答案 1 :(得分:0)
您很可能拥有包含Content属性的Page 你应该能够做到以下
StackPanel panel = new StackPanel();
this.Content = panel;
panel.Children.Add(new CheckBox());
panel.Children.Add(new CheckBox());
panel.Children.Add(new CheckBox());
我猜您可以按照以下方式引用它们
CheckBox cb = new CheckBox();
panel.Children.Add(cb);