我的问题是我如何将自定义控件的ViewModel列表放入Scrollviewer中,并将其与itemtemplate一起使用。我读了一些关于Virtualizingstackpanels和itemcontrol的内容,但我真的不明白这一点。
如果有人能帮助我,那就太好了。
答案 0 :(得分:1)
假设您想在滚动查看器中使用相同视图模型的多个实例,则需要执行以下操作
public class MyViewModel
{
public string SomeProperty {get;set;}
}
在您的视图中使用ItemsControl并提供DataTemplate并将其绑定到视图模型列表。
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
<ItemsControl ItemsSource="{Binding ListOfViewModels}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="{Binding SomeProperty}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
这里的datatemplate是一个带有文本块的简单网格,你也可以使用你自己的自定义控件
的更多信息