我在WP7项目中遇到VS2010 Designer的小问题。 XAML看起来像这样:
<ListBox ItemsSource="{Binding Children}">
<ListBox.ItemTemplate>
<DataTemplate>
<Button Tools:ButtonBaseExtensions.Command="{Binding ClickedCommand}"
Style="{StaticResource InvisibleButtonStyle}">
<Grid DataContext="{Binding Gui}">
<TextBlock Text="{Binding Label}"/>
</Grid>
</Button>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
在模拟器中按预期工作,但在设计器中没有给我任何输出。
但是,如果我将代码更改为此,设计师可以正常工作
<ListBox ItemsSource="{Binding Children}">
<ListBox.ItemTemplate>
<DataTemplate>
<Button Tools:ButtonBaseExtensions.Command="{Binding ClickedCommand}"
Style="{StaticResource InvisibleButtonStyle}">
<Grid>
<TextBlock Text="{Binding Gui.Label}"/>
</Grid>
</Button>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
任何人都可以确认这是设计师的错误吗?如果是这样,任何简单的解决方法?我不想以不同的方式更改我的XAML或构造我的控件,只是为了支持设计师。
谢谢, 克里斯
答案 0 :(得分:0)
有些人提出类似的问题 - 与绑定中的嵌套项集合有关。一般的经验是,如果你在物品中有物品,那么事情可能不会像你期望的那样(或者可能在其他地方看到)。
表现不同可能并非意图 试试“官方”论坛(http://forums.create.msdn.com/forums/98.aspx),确认这是否是“错误”。
您可能还想同时重新考虑您的模型结构,因为您可能遇到其他相关问题。列表中的列表也可能存在性能问题,建议尽可能避免使用。