Как передать Collection через DataContext в ListBox UserControl? - PullRequest
0 голосов
/ 18 мая 2018

Я хочу отделить ListBox от MainMenu, создав UserControl.В MainWindow я создаю для целей тестирования ObservableCollection (в выделенном фрагменте кода) и в MainWindow.xaml. Я пытаюсь передать эту коллекцию через DataContext в UserControl

MainWindow.xaml.cs

ObservableCollection<ListItem> coll = new ObservableCollection<ListItem>() 
{ 
    new TextListItem 
    {
        Content = "Some Text", CreationDate = DateTime.Now, VisibleName = "Title" 
    } 
};

MainWindow.xaml

<userControls:ListBoxUserControl DataContext="{Binding Path=coll}"/>

И в ListBoxUserControl.xaml Я пытаюсь получить доступ к Collection как этот

<ListBox x:Name="listBox" ItemsSource="{Binding}"/>

Но, похоже, не работает.Как правильно передать Collection через DataContext?

1 Ответ

0 голосов
/ 18 мая 2018

coll должно быть свойством класса MainWindow.Как я сейчас читаю, это просто переменная, которая выйдет из области видимости после того, как вы покинули метод (я думаю, конструктор), в котором он определен.

...