读书人

怎么得到ControlTemplate内的对象

发布时间: 2012-03-16 16:34:56 作者: rapoo

如何得到ControlTemplate内的对象
在App.xaml内定义一个控件模板:
<Application.Resources>
<ControlTemplate x:Key="cjsSunMapTipTemplate">
<Border Background="White" Name="outBorder">
<ScrollViewer>
<Grid HorizontalAlignment="Left" VerticalAlignment="Top">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="查看原始文档" Grid.Row="0" Grid.Column="0" />
<HyperlinkButton Content="下载..." Name="downLink" Grid.Row="0" Grid.Column="1"/>
</Grid>
</ScrollViewer>
</Border>
</ControlTemplate>
<Application.Resources>

在MainPage内有如下定义:
<Canvas HorizontalAlignment="Left" VerticalAlignment="Top" Name="maptipCanvas">
<MapTip x:Name="firstMapTip" BorderBrush="#99000000">
</MapTip>
</Canvas>

程序将firstMapTip以全局变量形式传递给另一个Silverlight页面testPage.xaml。在页面testPage.xaml内设置firstMapTip的控件模板:
firstMapTip.Template = Application.Current.Resources["cjsSunMapTipTemplate"] as ControlTemplate;

问题如下:在页面testPage.xaml内如何得到ControlTemplate内名为“downLink”的HyperlinkButton对象?

[解决办法]
请参考以下教程:

Silverlight:获取ControlTemplate中的元素

http://silverlightchina.net/html/tips/2011/0621/8471.html

Silverlight:获取ContentTemplate中的命名控件

http://silverlightchina.net/html/tips/2011/0903/10207.html

Silverlight 获取DataTemplate 中可视化元素
http://silverlightchina.net/html/tips/2011/1129/12149.html

读书人网 >CAD教程

热点推荐