2010-02-18 12 views

उत्तर

27

सिल्वरलाइट 4 में RelativeSourceBinding की संपत्ति अभी भी केवल "स्वयं" और "टेम्पलेटेड पैरेंट" का समर्थन करती है, इस क्षेत्र में सिल्वरलाइट 3 से कोई बदलाव नहीं है।

4

शायद आप XMAL में ViewModel का दृष्टांत सकता है के रूप में एक स्थिर संसाधन तो संदर्भ है कि अपने बंधन में स्रोत के रूप में।

<UserControl.Resources> 
    <vm:MainPageViewModel x:Key="ViewModel"/> 
</UserControl.Resources> 

<Grid x:Name="LayoutRoot" Background="White" DataContext="{Binding Source={StaticResource ViewModel}}"> 
    <ListBox ItemsSource="{Binding Partitions}"> 
     <ListBox.ItemsPanel> 
      <ItemsPanelTemplate> 
       <toolkit:WrapPanel FlowDirection="LeftToRight" /> 
      </ItemsPanelTemplate> 
     </ListBox.ItemsPanel> 
     <ListBox.ItemTemplate> 
      <DataTemplate> 
       <Button Margin="10,0" Width="40" Content="{Binding}" Command="{Binding Source={StaticResource ViewModel}, Path=ButtonCommand}" CommandParameter="{Binding}"/> 
      </DataTemplate> 
     </ListBox.ItemTemplate> 
    </ListBox> 

</Grid> 
16

RelativeSource AncestorTypeis supported in Silverlight 5, जो अब उपलब्ध है।

<TextBlock Text="{Binding Name}" 
      FontSize="{Binding DataContext.CustomFontSize, 
       RelativeSource={RelativeSource AncestorType=UserControl}}" 
/>