Search code examples
c#wpfitemscontrolgroupbox

Add Controls to GroupBox which was created dynamically


I add GroupBoxes to an ItemsControl dynamically using:

string name_ = "TestName", header_ = "TestHeader"
GroupBox MyGroupBox = new GroupBox { Name = name_, Header= header_, Width = 240, Height = 150, Foreground=new SolidColorBrush(Color.FromArgb(255, 0, 0, 0)) };

MyItemsControl.Items.Add(MyGroupBox);

Now I need to add content to this GroupBox, like a few TextBlocks created like:

TextBlock MyTextBlock = new TextBlock {Text = "test"};

But I can't figure out how to do that. Normally to a Grid or something like that I would just use .Children.Add(MyTextBlock), but that doesn't work here.

Also I have to be able to remove specific Items from the ItemsControl again (best would be by the name of the Item, name_ in this example).


Solution

  • Try something like that

    GroupBox groupBox1 = new GroupBox();
    Grid grid1 = new Grid();
    TextBlock MyTextBlock = new TextBlock {Text = "test"};
    groupBox1.Width = 185;
    groupBox1.Height = 160;
    grid1.Height =  185;
    grid1.Width =  160;
    grid1.Children.Add(MyTextBlock);
    groupBox1.Content = grid1;
    mainWindow.canvas.Children.Add(groupBox1);