C# 在Windows Phone 8中更新Pivot标题时出现奇怪的工件
我有一个XAML页面,其中只有一个C# 在Windows Phone 8中更新Pivot标题时出现奇怪的工件,c#,xaml,windows-phone-8,C#,Xaml,Windows Phone 8,我有一个XAML页面,其中只有一个Pivot,带有绑定的ItemSource和以下模板(只更改simpilcity的标题) ItemSource(Services)是一个简单数据类型的ObservableCollection,只有一个标题属性实现了INotifyPropertyChanged。当我更改任何项目的标题时,透视标题呈现得非常奇怪: 以下是重现问题的完整简化解决方案: 这是一个Pivot错误吗?在标题更改后,文本块的宽度似乎没有更新。您可以通过如下方式定义TextBlock来检查
Pivot
,带有绑定的ItemSource和以下模板(只更改simpilcity的标题)
ItemSource(Services)是一个简单数据类型的ObservableCollection
,只有一个标题
属性实现了INotifyPropertyChanged
。当我更改任何项目的标题
时,透视
标题呈现得非常奇怪:
以下是重现问题的完整简化解决方案:
这是一个
Pivot
错误吗?在标题
更改后,文本块的
宽度
似乎没有更新。您可以通过如下方式定义TextBlock
来检查它:
<TextBlock Text="{Binding Title}" Width="400" />
因此它没有更新,两个标题相互重叠。确实是一个bug。。。我也遇到了同样的问题,最终我不得不重新加载Pivot的整个DataContext
因为我使用的是MVVM,所以我刚刚创建了items集合的新实例,并为此更改了raised属性。是的,这样可以防止标签重叠。但这不是一个解决方案,设置宽度会使标签看起来很奇怪,也不太像一个枢轴。@IgorKulman是的,你说得对,这不是一个解决方案-它说明了问题所在。也许您可以尝试更新TextBlock,或者将其宽度绑定到属性TitleWidth,并调用为其更改的属性,然后在TitleWidth的getter中添加一些ligic。。。我也遇到了同样的问题,最后不得不重新加载Pivot的整个数据上下文。因为我使用的是MVVM,所以我刚刚创建了items集合的新实例,并为此更改了引发的属性。回答这个问题,我会接受的。
<TextBlock Text="{Binding Title}" Width="400" />