如何在代码背后获得ContentPresenter
本文关键字:ContentPresenter 背后 代码 | 更新日期: 2023-09-27 18:24:35
我在Themes''Generic.xaml下有下面的代码
现在我需要在代码中了解cPresenter我该怎么做?
事实上,我试图将Silverlight实现转换为WPF代码。我想使用类似Silverlight的东西:
FrameworkElement cp = this.GetTemplateChild("cPresenter") as FrameworkElement;
主题''Generic.xaml
<Style TargetType="local:Marquee">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:Marquee">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<ScrollViewer Width="Auto" Height="Auto" HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch" VerticalScrollBarVisibility="Disabled">
<Canvas>
<ContentPresenter x:Name="cPresenter" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Canvas>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
没有理由不在WPF中工作。把这个放在Marquee
的代码中。
private ContentPresenter cPresenter;
public override void OnApplyTemplate()
{
base.OnApplyTemplate();
this.cPresenter = this.GetTemplateChild("cPresenter") as ContentPresenter;
}