Il problema è che RelativeSource
non funziona nel seguente caso. Io uso silverlight 5.RelativeSource e Popup
//From MainPage.xaml
<Grid x:Name="LayoutRoot" Background="White" Height="100" Width="200">
<Popup IsOpen="True">
<TextBlock Text="{Binding Path=DataContext, RelativeSource={RelativeSource AncestorType=Grid}}" />
</Popup>
</Grid>
//From MainPage.xaml.cs
public MainPage()
{
InitializeComponent();
DataContext = "ololo";
}
Se ho impostato un punto di interruzione sulla vincolante, vado a prendere Errore:
System.Exception: BindingExpression_CannotFindAncestor.
Se uso ElementName=LayoutRoot
invece di RelativeSource
, tutto sarà OK.
Perché il binding della relativa fonte non funziona?
Ok. Questo è chiaro per il controllo popup. C'è un modo di utilizzare la sorgente relativa in ComboBoxItemTemplate? –