在ListView中绑定DataContext



我正试图通过另一个控件(PanelList.xaml/PanelListViewModel:cs(的ListView设置UserControl(Panel.xaml/PanelViewModel.cs(的DataContext。

我有以下ViewModel:

public class PanelListViewModel
{
public List<PanelViewModel> Apps { get; set; } = new List<PanelViewModel>
{
new PanelViewModel
{
ApplicationName = "App 1",
ApplicationVersion = "v. 1.0.3",
IsInstalled = true
},
new PanelViewModel
{
ApplicationName = "App 2",
ApplicationVersion = "v. 1.0.3",
IsInstalled = false
}
};
}

并具有以下UserControl:

<UserControl.DataContext>
<vm:PanelListViewModel/>
</UserControl.DataContext>
<ListView ItemsSource="{Binding Apps}">
<ListView.ItemTemplate>
<DataTemplate>
<local:Panel DataContext="{Binding}"
VerticalAlignment="Center"
HorizontalAlignment="Center"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>

它最初在VS的设计器预览窗口中工作,但一旦我构建它,DataContext绑定就不再工作了。请帮助:(

你能设置一个"x: 名称";对于ListView,并在加载事件中尝试以下代码,也许会有所帮助:

C#代码:

myListView.DataContext = Apps;

XAML代码:

<ListView ItemsSource="{Binding Apps}" x:Name="MyListView">

最新更新