Will there be RelativeSource FindAncestor, AncestorType... in Silverlight 4?
            Asked
            
        
        
            Active
            
        
            Viewed 2.4k times
        
    4 Answers
27
            In Silverlight 4 the RelativeSource property of Binding still only supports "Self" and "TemplatedParent", there is no change from Silverlight 3 in this area.
 
    
    
        AnthonyWJones
        
- 187,081
- 35
- 232
- 306
16
            
            
        RelativeSource AncestorType is supported in Silverlight 5, which is available now.
<TextBlock Text="{Binding Name}" 
           FontSize="{Binding DataContext.CustomFontSize, 
               RelativeSource={RelativeSource AncestorType=UserControl}}"
/>
 
    
    
        Drew Noakes
        
- 300,895
- 165
- 679
- 742
4
            
            
        Perhaps you could instantiate the ViewModel in the XMAL as a static resource then reference that as the source in your binding.
<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>
 
    
    
        Ralph Shillington
        
- 20,718
- 23
- 91
- 154
3
            
            
        This may help:
http://blog.thekieners.com/2010/09/08/relativesource-binding-with-findancestor-mode-in-silverlight/
 
    
    
        synergetic
        
- 7,756
- 8
- 65
- 106
