是否可以只在C#中动态创建复选框并指定其组框/网格和位置

本文关键字:位置 网格 复选框 创建 动态 是否 | 更新日期: 2023-09-27 18:22:49

我正在尝试创建大量复选框,但我觉得如果在xaml中创建这些复选框,效率会很低。

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

我是WPF的新手,谢谢!

是否可以只在C#中动态创建复选框并指定其组框/网格和位置

@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);

很可能您有一个具有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);