yoshikazuendo
1/12/2015 - 3:17 AM

【WPF】DataContext直下のプロパティ(DataContext.HogeHogeProp)を別の子要素から取得する。 ※参考サイト:http://d.hatena.ne.jp/hilapon/20130405/1365143758

【WPF】DataContext直下のプロパティ(DataContext.HogeHogeProp)を別の子要素から取得する。 ※参考サイト:http://d.hatena.ne.jp/hilapon/20130405/1365143758

<Grid>
  <Grid.RowDefinitions>
    <RowDefinition/>
    <RowDefinition/>
  </Grid.RowDefinitions>
  <Grid>
    <TabControl>
      <TabItem Header="first" IsSelected="{Binding IsSelectedFirstTab}">
      </TabItem>
      <TabItem Header="second" IsSelected="{Binding IsSelectedSecondTab}">
      </TabItem>
    </TabControl>
  </Grid>
  <ListBox Grid.Row="1" x:Name="List" ItemsSource="{Binding List}">
    <ListBox.ItemTemplate>
      <DataTemplate>
        <!-- こんな感じで取得できる。 -->
        <Label Content="{Binding RelativeSource={RelativeSource AncestorType=Window}, Path=DataContext.IsSelectedFirstTab}" />
      </DataTemplate>
    </ListBox.ItemTemplate>
  </ListBox>
</Grid>