This article lists required parts of the control template for StockChart control.

Required Parts

You can rearrange parts of the control any way you want but these parts are required in a control template for StockChart control:

PART_MainPanel
Panel. Main panel of the control containing all other control parts.
PART_ChartGrid
Grid. Grid to which StockChart adds all of it's sub-charts (Chart objects).
PART_DataSetSelectorContainer
Border. Container (placeholder) for DataSetSelector.
PART_PeriodSelectorContainer
Border. Container (placeholder) for PeriodSelector.
PART_ScrollerContainer
Border. Container (placeholder) for Scroller.
PART_HeaderContainer
Border. Container (placeholder) for arbitrary content (usually used as chart heading).

Default Template XAML

CopyXAML
<ControlTemplate TargetType="ams:StockChart">

    <Border Background="{TemplateBinding Background}"
            BorderBrush="{TemplateBinding BorderBrush}"
            BorderThickness="{TemplateBinding BorderThickness}"
            Padding="{TemplateBinding Padding}"
            >
        <Grid Name="PART_MainPanel">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto" />
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="Auto" />
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="*" />
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>

            <Border Name="PART_HeaderContainer" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" />

            <Grid Grid.Row="1" Grid.Column="1" 
                   Margin="{TemplateBinding PlotAreaMargin}">
                <Grid.RowDefinitions>
                    <RowDefinition />
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <Border Grid.Row="0"
                        Background="{TemplateBinding PlotAreaBackground}"
                        BorderBrush="{TemplateBinding PlotAreaBorderBrush}"
                        BorderThickness="{TemplateBinding PlotAreaBorderThickness}"
                        CornerRadius="{TemplateBinding PlotAreaCornerRadius}"
                        >
                    <Grid Name="PART_ChartGrid">
                    </Grid>
                </Border>

                <Border Name="PART_ScrollerContainer" Grid.Row="1" 
                        Visibility="{TemplateBinding ScrollerVisibility}" />

                <Border Name="PART_PeriodSelectorContainer" Grid.Row="2" 
                        Visibility="{TemplateBinding PeriodSelectorVisibility}" />
            </Grid>

            <Border Name="PART_DataSetSelectorContainer"
                    Grid.Column="2" Grid.Row="0" Grid.RowSpan="2"
                    Visibility="{TemplateBinding DataSetSelectorVisibility}"
                  >
            </Border>

        </Grid>
    </Border>
</ControlTemplate>

See Also