Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight 如何从ViewModel绑定StackPanel子项?_Silverlight_Mvvm_Silverlight 4.0 - Fatal编程技术网

Silverlight 如何从ViewModel绑定StackPanel子项?

Silverlight 如何从ViewModel绑定StackPanel子项?,silverlight,mvvm,silverlight-4.0,Silverlight,Mvvm,Silverlight 4.0,Silverlight的新手。我正在开发一个聊天应用程序,其中新的聊天信息会添加到列表的底部。我有一个工作版本,在ScrollViewer中用作StackPanel,然后在一些代码中使用StackPanel.Children.Add() 我正在尝试将其转换为视图-视图模型方法,但我不知道如何将StackPanel的子级绑定到任何集合属性。我试过这个: <ScrollViewer Name="scrollMessages" Grid.Row="2" Margin="0,0,0,0" Vert

Silverlight的新手。我正在开发一个聊天应用程序,其中新的聊天信息会添加到列表的底部。我有一个工作版本,在ScrollViewer中用作StackPanel,然后在一些代码中使用StackPanel.Children.Add()

我正在尝试将其转换为视图-视图模型方法,但我不知道如何将StackPanel的子级绑定到任何集合属性。我试过这个:

<ScrollViewer Name="scrollMessages" Grid.Row="2" Margin="0,0,0,0" VerticalScrollBarVisibility="Visible">
    <StackPanel x:Name="pnlMessages" Orientation="Vertical" Children="{Binding Path=ExampleTBs}" />
</ScrollViewer>

其中ExampleTBs是在代码中创建的文本块的集合。这会导致XAML解析失败,子属性无法以这种方式绑定

绑定到StackPanel本身的方法是固定的吗?我应该使用不同的容器类型吗?我看到另一个问题,那家伙用代码创建了整个StackPanel,然后使用ContentPresenter


总之,我想找到一种方法,将我的视图数据绑定到viewmodel,使用StackPanel之类的东西作为容器,随着时间的推移,连续的项目将添加到容器中。最佳方法?

您需要使用
堆叠面板吗?如果改为使用,则仍会在垂直列表中显示每条聊天信息,并允许绑定数据。

使用a(或任何其他)并将属性绑定到ViewModel中的。

谢谢,除了在添加新项目时滚动到底部外,此操作有效。在你的脑海中,你知道一种可视模式的方法吗?试试这个: