user1288039
user1288039

Reputation: 99

WP8 - access datacontext of parent

How can I access the datacontext of the parent element in windows phone 8? AncestorType is not available in WP8.

<ItemsControl x:Name="Elements" ItemsSource="{Binding MyList}" Grid.Row="2" Grid.Column="3">
<ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <toolkit:WrapPanel  />
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Button Content="e"  Width="100" Height="100" Command="{Binding MyCommand" />
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>

"MyCommand" is defined outside of "MyList". So how can I access from my button to the root datacontext (DataContext = MyClass). MyCommand is defined in the MyClass class.

Thanks in advance.

Upvotes: 6

Views: 2987

Answers (1)

Jeremy Gilbert
Jeremy Gilbert

Reputation: 361

You could use an ElementName Binding instead. If your root grid (the one directly inside your page) is called LayoutRoot:

<Button Command="{Binding DataContext.MyCommand, ElementName=LayoutRoot}" />

Upvotes: 13

Related Questions