访问另一个窗口中的UserControl控件

本文关键字:UserControl 控件 另一个 窗口 访问 | 更新日期: 2023-09-27 18:16:25

我有一个包含ListViewButtonUserControl。我已经在Window1.xaml中包含了我的UserControl,但我不知道我该怎么做,所以我可以在Window1.xaml.cs中访问我的ListView控件。

我还需要做什么?这里最好的方法是什么?

访问另一个窗口中的UserControl控件

这不是你应该做的事情,而是在UserControl上创建内部绑定的属性,然后你有一个干净的界面。

<UserControl Name="control" ...>
    <ListView ItemsSource="{Binding ItemsSource, ElementName=control}">
        <!-- ... -->
public class MyUserControl : UserControl
{
    public static readonly DependencyProperty ItemsSourceProperty =
        DependencyProperty.Register("ItemsSource", typeof(IEnumerable), typeof(MyUserControl), new UIPropertyMetadata(null));
    public IEnumerable ItemsSource
    {
        get { return (IEnumerable)GetValue(ItemsSourceProperty); }
        set { SetValue(ItemsSourceProperty, value); }
    }
}
<Window ...>
    <local:MyUserControl x:Name="myUc"/>
        <!-- ... -->
myUc.ItemsSource = new string[] { "Lorem", "Ipsum" };