开发者

Adding controls to GroupBox during runtime

开发者 https://www.devze.com 2023-04-10 04:49 出处:网络
I\'m trying to create a GroupBox, add a Grid (or StackPanel) to it then put some TextBlocks on it, all during runtime. This is what i\'ve tried

I'm trying to create a GroupBox, add a Grid (or StackPanel) to it then put some TextBlocks on it, all during runtime. This is what i've tried

开发者_运维技巧
GroupBox groupBox1 = new GroupBox();
Grid grid1 = new Grid();

groupBox1.Width = 85;
groupBox1.Height = 60;
grid1.Height =  85;
grid1.Width =  60;

groupBox1.Content = grid1.Children.Add(textBlock1);
groupBox1.Margin = new Thickness(50, 50, 0, 0);

mainWindow.canvas.Children.Add(groupBox1);

But all I get is a groupbox with a thick white border with nothing in it.


As far as I can see a Grid.Children.Add returns an int and that's not what you want to set the content of the groupBox1 to.

An untested idea from me as a non WPF expert is to set the grid as the Content of your groupbox.

grid1.Children.Add(textBlock1);
groupBox1.Content = grid1;


For simple checkboxes i used this code :

var container = new FlowLayoutPanel
{
     FlowDirection = FlowDirection.TopDown,
     Dock = DockStyle.Fill
 };
 myGroupBox.Controls.Add(container);
 foreach (var myText in textList)
 {
     var checkBox = new CheckBox
     {
         Text = myText

     };
     container.Controls.Add(checkBox);
 }

Of course the foreach statement is just for the example :)

0

精彩评论

暂无评论...
验证码 换一张
取 消