【发布时间】:2012-08-07 12:36:26
【问题描述】:
在silverlight 中是否允许对collection<*> 进行数据绑定?因为我做了以下,没有任何反应
<SilverlightToolkit:Accordion Name="ToolboxCategories" SelectionMode="ZeroOrMore">
<SilverlightToolkit:Accordion.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"></TextBlock>
</DataTemplate>
</SilverlightToolkit:Accordion.ItemTemplate>
<SilverlightToolkit:Accordion.ContentTemplate>
<DataTemplate>
<ListBox x:Name="CategoryControls" ItemsSource="{Binding States}" BorderThickness="0">
<ListBox.ItemTemplate>
<DataTemplate>
<Canvas>
<TextBlock Text="{Binding Name}"></TextBlock>
</Canvas>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</DataTemplate>
</SilverlightToolkit:Accordion.ContentTemplate>
</SilverlightToolkit:Accordion>
其中Country 是包含Collection<State> 类型的States 属性的类
国家
Public Class Country
{
Public Collection<State> States;
Public string Name{get;set;}
}
状态
Public Class State
{
Public string Name{get;set;}
}
Xaml.cs
List<Country> countries = DAL.GetCountries();
ToolboxCategories.ItemSource = countries;
注意: 我看到accordian 标题在每个accordian 标题中显示了国家名称,但是 Listbox 没有与州数据绑定。
【问题讨论】:
-
请显示国家代码+数据上下文的设置方式。
-
@ken2k 添加了更多代码来查找问题
标签: silverlight binding silverlight-4.0 listbox itemsource