通过绑定在Wpf中加载用户控件

本文关键字:加载 用户 控件 Wpf 绑定 | 更新日期: 2023-09-27 18:27:44

目前,我在WPF应用程序中有一个单独的窗口和几个用户控件。我的目标是通过绑定到视图模型中的属性将它们加载到XAML中。一段时间以来,我一直在寻找实现这一点的方法,但大多数解决方案都取决于使用代码而不是视图模型。有没有通过绑定来实现这一点?类似于:

<StackPanel Height="500" HorizontalAlignment="Left" Margin="0,46,0,0" Name="stackPanel1" VerticalAlignment="Top" Width="500" Content="{Binding SomeUserControl}" />

代码中:

private Control _someUserControl;
public Control SomeUserControl
{
    get { return _someUserControl; }
    set { _someUserControl = value; }
}

通过绑定在Wpf中加载用户控件

您可以使用ContentPresenter而不是StackPanel,因为只有一个元素:

<ContentPresenter Height="500" HorizontalAlignment="Left" Margin="0,46,0,0" VerticalAlignment="Top" Width="500" Content="{Binding SomeUserControl}" />