以编程方式添加项目以弹出

时间:2013-08-10 14:56:56

标签: c# wpf popup

我需要创建一些项目并将其添加到弹出代码隐藏中。在XAML中很容易做到这一点:

<Popup StaysOpen="False">
    <DockPanel>
        //Items here
    </DockPanel>
 </Popup>

我认为“儿童”是我需要添加项目的地方,但我看不到里面有任何“添加”,“项目”,“来源”或“内容”。有谁知道怎么做?

Popup myPopup= new Popup();
myPopup.Child // ... need to add items there

2 个答案:

答案 0 :(得分:4)

Popup是一个FrameworkElement,只能有一个子(Child)=&gt;你不能在里面添加多个控件,但你可以设置 Child作为你想要的任何UIElement。例如DockPanel,而不是使用面板上的AddChild来添加更多控件。

myPopup.Child = new DockPanel();

答案 1 :(得分:1)

您可以将PopUp的子项设置为DockPanel,然后将子项添加到DockPanel。

以下代码显示:

   var popup = new Popup();
   var dockPanel = new DockPanel();
   popup.Child = dockPanel;
   dockPanel.Children.Add(new TextBox {Text = "First Child" });
   popup.IsOpen = true;