我需要创建一些项目并将其添加到弹出代码隐藏中。在 XAML 中很容易做到这一点:
<Popup StaysOpen="False">
<DockPanel>
//Items here
</DockPanel>
</Popup>
Run Code Online (Sandbox Code Playgroud)
我认为“孩子”是我需要添加项目的地方,但我在里面看不到任何“添加”、“项目”、“来源”或“内容”。有谁知道如何做到这一点?
Popup myPopup= new Popup();
myPopup.Child // ... need to add items there
Run Code Online (Sandbox Code Playgroud)
Popup 是一个 FrameworkElement 并且只能有一个子元素(Child) => 你不能在里面添加多个控件,但是你可以将Child设置为你想要的任何 UIElement。例如 DockPanel,然后在面板上使用 AddChild 添加更多控件。
myPopup.Child = new DockPanel();
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以将 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;
Run Code Online (Sandbox Code Playgroud)