Silverlight 3绑定到集合中的当前项

时间:2010-04-04 07:00:52

标签: wpf silverlight binding silverlight-4.0 silverlight-3.0

绑定语法{Binding /}在WPF中有效但在Silverlight 3中无法

<ContentControl Content="{Binding MyCollection}">
    <ContentControl.ContentTemplate>
        <DataTemplate>
            <ContentControl Content="{Binding /}" />
        </DataTemplate>
    </ContentControl.ContentTemplate>
</ContentControl>

在Silverlight中解决这个问题的方法是什么?

2 个答案:

答案 0 :(得分:4)

我认为你想要{Binding}{Binding .},其中任何一个都做同样的事情。

答案 1 :(得分:4)

当绑定到WPF中的集合时,您实际上是绑定到理解“当前项”概念的东西。

但是在Silverlight中你绑定的东西没有这个概念。所以你需要自己做。

例如,在MVVM应用程序中公开属性。

<ListBox SelectedItem="{Binding MyCurrentItem}" 
         ItemsSource="{Binding MyCollection}"/>
<ContentControl Content="{Binding MyCurrentItem}" />

或做一些元素绑定

<ListBox x:Name="listBox" 
         ItemsSource="{Binding MyCollection}"/>
<ContentControl Content="{Binding SelectedItem, ElementName=listBox}" />