我是wpf和c#的新手。我有两个窗口,如MainWindow和MainWindow2。 我在MainWindow中有一个按钮,用于打开MainWindow2和一个带有StackPanel的GroupBox。 在MainWindow2中,我有一个按钮,我想将一个RadioButton添加到MainWindow中的StackPanel。
这是MainWindow代码
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
RadioButton butãoRadial = new RadioButton();
stackPanel1.Children.Add(butãoRadial);
}
private void Button_Click(object sender, RoutedEventArgs e)
{
MainWindow2 obj = new MainWindow2();
obj.Show();
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
}
}
这是MainWindow2代码:
public partial class MainWindow2 : Window
{
public MainWindow2()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
MainWindow window = new MainWindow();
}
}
抱歉我的英语不好^^
答案 0 :(得分:1)
请不要这样做......每当你从另一个窗口直接向一个窗口添加控件时,小猫就会死掉。如果你没有进入小猫,那么用你亲爱的其他东西代替那句话。
更合适的方法是将ItemsControl(或ListView之类的派生物)绑定到ViewModel中的ObservableCollection
,然后使用DataTemplate
在ItemTemplate
属性中定义,以表示屏幕上ObservableCollection中的每个项目。然后,您所要做的就是将适当的数据项添加到ObservableCollection(可以传递给第二个窗口)。
Pleeeeeeeeaaaassssseee不要从另一个窗口添加控件!