Ich habe Schwierigkeiten mit einem Bindungsausdruck in Silverlight 3 für Windows Phone 7.
<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>
<!-- ... -->
Der Stil, in 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>
Code dahinter:
public Visibility NoStoryContent
{
get
{
// trivial return value for debugging
// no breakpoint here is hit
return Visibility.Collapsed;
}
}
public Sections()
{
InitializeComponent();
LayoutRoot.DataContext = this;
}
Was mache ich hier falsch? Ich vermute, dass ich einen Fehler im verbindlichen Ausdruck habe, aber ich bin nicht sicher, wo.
Update : Ich sehe keine Fehlermeldungen in der Debug-Ausgabe.
Aktualisierung 2 : Wenn ich sage 'funktioniert nicht', meine ich 'das Steuerelement ist immer sichtbar, obwohl ich versuche, es eingeklappt zu machen, und auf die Eigenschaft, an die die Sichtbarkeit gebunden ist, wird nie zugegriffen'.