WPF中如何获取ControlTemplate中的对象

原文 http://www.silverlightchina.net/html/study/WPF/2010/1116/3418.html

先看一段XAML代码:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<TabItem Name="RootTabItem" Background="Transparent">
	<TabItem.Template>
		<ControlTemplate TargetType="TabItem">
			<Button Name="btnTabItem">
				<Button.Template>
					<ControlTemplate TargetType="Button">
						<StackPanel Orientation="Horizontal" Background="Transparent">
							<local:IconButton x:Name="btnSend" ToolTip="send"
								   Icon="/Resources/Icon/sendIcon.png"/>
						    <local:IconButton x:Name="btnCut" ToolTip="cut"
								   Icon="/Resources/Icon/cutIcon.png"/>
						</StackPanel>
					</ControlTemplate>
				</Button.Template>
			</Button>
		</ControlTemplate>
	</TabItem.Template>
</TabItem>

  我想要获取btnSend对象,可以这样去做:

1
2
3
4
DependencyObject d1 = VisualTreeHelper.GetChild(RootTabItem,0);
Button button = LogicalTreeHelper.FindLogicalNode(d1,"btnTabItem") as Button;
DependencyObject d2 = VisualTreeHelper.GetChild(button,0);
IconButton iconButton = LogicalTreeHelper.FindLogicalNode(d2,"btnSend") as IconButton;

  现在就可以使用iconButton(btnSend)干你想干的事情了,\(^o^)/...

本文来自朔月星辰的博客,原文地址:http://www.cnblogs.com/syxc/archive/2010/11/05/1870147.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值