对于Windows Phone 7,我在Silverlight 3中遇到绑定表达式时遇到了问题。
<Grid x:Name="LayoutRoot" Background="Transparent">
<controls:Pivot ItemsSource="{Binding SectionViewModels}">
<!-- ... -->
<controls:Pivot.ItemTemplate>
<DataTemplate>
<Grid>
<!-- this is the troublesome binding (for Visibility) -->
<TextBlock Style="{StaticResource disabledText}"
Visibility="{Binding ElementName=LayoutRoot, Path=DataContext.NoStoryContent}">
Do you have a network connection?
</TextBlock>
<!-- ... -->
样式,在 app.xaml :
<Style x:Key="disabledText" TargetType="TextBlock">
<Setter Property="Foreground" Value="{StaticResource PhoneDisabledBrush}" />
<Setter Property="TextWrapping" Value="Wrap" />
<Setter Property="FontSize" Value="{StaticResource PhoneFontSizeLarge}" />
</Style>
代码背后:
public Visibility NoStoryContent
{
get
{
// trivial return value for debugging
// no breakpoint here is hit
return Visibility.Collapsed;
}
}
public Sections()
{
InitializeComponent();
LayoutRoot.DataContext = this;
}
我在这里做错了什么?我怀疑我在绑定表达式中有错误,但我不知道在哪里。
更新:我在调试输出中看不到任何错误消息。
更新2 :当我说“不起作用”时,我的意思是“控件始终可见,即使我正在尝试将其折叠,并且其可见性属性为永远不会访问绑定。'