【发布时间】:2010-02-12 04:39:09
【问题描述】:
如何从绑定到控件模板或数据模板的控件中获取命名控件?
我试过 FindName 还是不行。 我不喜欢使用 VisualTreeHelper,因为您必须单独遍历每个父子项。
【问题讨论】:
如何从绑定到控件模板或数据模板的控件中获取命名控件?
我试过 FindName 还是不行。 我不喜欢使用 VisualTreeHelper,因为您必须单独遍历每个父子项。
【问题讨论】:
这取决于你什么时候做。如果您在构造函数中执行此操作,它将无法工作,因为该元素仅在应用模板后才存在。
这是创建控件的标准方法:
public override void OnApplyTemplate() {
//i call the base first
base.OnApplyTemplate();
//then go looking for the newly created elements
TextBox textBox = this.Template.FindName("PART_TextBox", this) as TextBox;
}
【讨论】: