J'ai un GroupBox à l'intérieur d'un canevas contenant différents contrôles. Au moment de l'exécution, je veux changer le GroupBox à un Expander.wpf: supprimer le contrôle dans GroupBox
Non, je ne peux pas le faire en xaml. Ce serait facile!
Je reçois tous les enfants du GroupBox et je sais que je dois en détacher les enfants pour l'ajouter à un nouveau Visual.
Voici le code:
for (int i= 0; i < VisualTreeHelper.GetChildrenCount(Canvas2DHandler); i++)
{
DependencyObject child = VisualTreeHelper.GetChild(Canvas2DHandler, i);
if (child != null && typeof(GroupBox) == child.GetType())
{
GroupBox roomGroupBox = (GroupBox)child;
Expander roomExpander = new Expander();
StackPanel sPForExpander = new StackPanel();
roomExpander.Header = roomGroupBox.Header;
for (int n=0; n < VisualTreeHelper.GetChildrenCount(child); n++)
{
UIElement groupBoxChild = VisualTreeHelper.GetChild(child, n) as UIElement;
//remove control from groupBox (HOWTO???)
sPForExpander.Children.Add(groupBoxChild);
}
roomExpander.Content = sPForExpander;
}
}
Alors que je suis en train d'obtenir des informations sur la suppression des enfants je ne peux même trouver une définition pour les enfants d'un GroupBox. Cela pourrait-il être le point?
Comment puis-je résoudre ceci/est-ce complètement autre chose?
réservoirs pour HELP!
Stef
vous remercie pour vous répondre rapidement. J'ai ignoré mon propre stackpanel – Stef