1

我正在尝试创建大量复选框,并且觉得如果我在 xaml 中创建它们会效率不高。

是否可以仅在 C# 中动态创建复选框并指定组框/网格及其位置?我知道我们可以动态创建复选框,但我不太确定如何通过 c# 管理其位置。

我对WPF比较陌生,谢谢!

4

2 回答 2

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);
于 2016-12-20T21:59:18.243 回答
0

很可能您有一个具有 Content 属性的页面,您应该能够执行以下操作

            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);
于 2013-07-17T19:24:36.340 回答