Browse Source

Binding ContentPresenter's DataContext.

To the owner control's Content property. In WPF this is done
automatically, but from looking on the internet it seems that causes
some confusion so do it explicitly.

Fixes #499 .
pull/504/head
Steven Kirk 11 years ago
parent
commit
4241fd8331
  1. 1
      src/Perspex.Themes.Default/Button.xaml
  2. 1
      src/Perspex.Themes.Default/CheckBox.xaml
  3. 3
      src/Perspex.Themes.Default/ContentControl.xaml
  4. 1
      src/Perspex.Themes.Default/DropDown.xaml
  5. 1
      src/Perspex.Themes.Default/DropDownItem.xaml
  6. 4
      src/Perspex.Themes.Default/Expander.xaml
  7. 1
      src/Perspex.Themes.Default/LayoutTransformControl.xaml
  8. 1
      src/Perspex.Themes.Default/ListBoxItem.xaml
  9. 3
      src/Perspex.Themes.Default/MenuItem.xaml
  10. 1
      src/Perspex.Themes.Default/RadioButton.xaml
  11. 1
      src/Perspex.Themes.Default/TabStripItem.xaml
  12. 1
      src/Perspex.Themes.Default/ToggleButton.xaml
  13. 1
      src/Perspex.Themes.Default/ToolTip.xaml
  14. 1
      src/Perspex.Themes.Default/TreeViewItem.xaml
  15. 5
      src/Perspex.Themes.Default/Window.xaml

1
src/Perspex.Themes.Default/Button.xaml

@ -14,6 +14,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"
TextBlock.Foreground="{TemplateBinding Foreground}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"

1
src/Perspex.Themes.Default/CheckBox.xaml

@ -22,6 +22,7 @@
</Border>
<ContentPresenter Name="PART_ContentPresenter"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Margin="4,0,0,0"
VerticalAlignment="Center"
Grid.Column="1"/>

3
src/Perspex.Themes.Default/ContentControl.xaml

@ -5,7 +5,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter>

1
src/Perspex.Themes.Default/DropDown.xaml

@ -11,6 +11,7 @@
BorderThickness="{TemplateBinding BorderThickness}">
<Grid ColumnDefinitions="*,Auto">
<ContentPresenter Content="{TemplateBinding SelectionBoxItem}"
DataContext="{TemplateBinding Content}"
Margin="{TemplateBinding Padding}"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>

1
src/Perspex.Themes.Default/DropDownItem.xaml

@ -10,6 +10,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
Padding="{TemplateBinding Padding}"/>

4
src/Perspex.Themes.Default/Expander.xaml

@ -17,6 +17,7 @@
Grid.Row="1"
IsVisible="{TemplateBinding IsExpanded}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" />
</Grid>
@ -34,6 +35,7 @@
Grid.Row="0"
IsVisible="{TemplateBinding IsExpanded}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" />
</Grid>
@ -51,6 +53,7 @@
Grid.Column="1"
IsVisible="{TemplateBinding IsExpanded}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" />
</Grid>
@ -68,6 +71,7 @@
Grid.Column="0"
IsVisible="{TemplateBinding IsExpanded}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" />
</Grid>

1
src/Perspex.Themes.Default/LayoutTransformControl.xaml

@ -6,6 +6,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter>

1
src/Perspex.Themes.Default/ListBoxItem.xaml

@ -7,6 +7,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter>

3
src/Perspex.Themes.Default/MenuItem.xaml

@ -13,6 +13,7 @@
<Grid ColumnDefinitions="22,13,*,20">
<ContentPresenter Name="icon"
Content="{TemplateBinding Icon}"
DataContext="{TemplateBinding Content}"
Width="16"
Height="16"
Margin="3"
@ -26,6 +27,7 @@
VerticalAlignment="Center"/>
<ContentPresenter Name="PART_HeaderPresenter"
Content="{TemplateBinding Header}"
DataContext="{TemplateBinding Content}"
Margin="{TemplateBinding Padding}"
VerticalAlignment="Center"
Grid.Column="2">
@ -81,6 +83,7 @@
<Panel>
<ContentPresenter Name="PART_HeaderPresenter"
Content="{TemplateBinding Header}"
DataContext="{TemplateBinding Content}"
Margin="{TemplateBinding Padding}">
<ContentPresenter.DataTemplates>
<DataTemplate DataType="sys:String">

1
src/Perspex.Themes.Default/RadioButton.xaml

@ -21,6 +21,7 @@
VerticalAlignment="Center"/>
<ContentPresenter Name="PART_ContentPresenter"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Margin="4,0,0,0"
VerticalAlignment="Center"
Grid.Column="1"/>

1
src/Perspex.Themes.Default/TabStripItem.xaml

@ -9,6 +9,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter>

1
src/Perspex.Themes.Default/ToggleButton.xaml

@ -14,6 +14,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"
TextBlock.Foreground="{TemplateBinding Foreground}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"

1
src/Perspex.Themes.Default/ToolTip.xaml

@ -10,6 +10,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter>

1
src/Perspex.Themes.Default/TreeViewItem.xaml

@ -13,6 +13,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Header}"
DataContext="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"
TemplatedControl.IsTemplateFocusTarget="True"
Grid.Column="1"/>

5
src/Perspex.Themes.Default/Window.xaml

@ -6,7 +6,10 @@
<ControlTemplate>
<Border Background="{TemplateBinding Background}">
<AdornerDecorator>
<ContentPresenter Name="PART_ContentPresenter" Content="{TemplateBinding Content}" Margin="{TemplateBinding Padding}"/>
<ContentPresenter Name="PART_ContentPresenter"
Content="{TemplateBinding Content}"
DataContext="{TemplateBinding Content}"
Margin="{TemplateBinding Padding}"/>
</AdornerDecorator>
</Border>
</ControlTemplate>

Loading…
Cancel
Save