我正在尝试访问WPF页面后面代码中的命名TextBox
(textBoxAnswer)。问题是,因为它是DataTemplate
的一部分,所以它不是作为类的私有成员自动生成的,就像我没有使用ContentPresenter
+ {{1 }}。 (我使用的是DataTemplate
,因为我需要使用DataTemplate
s,但未包含在下面的示例中。
我尝试过调用DataTrigger
和FindResource("textBoxAnswer")
,但都没有返回任何内容。
有什么建议吗?这是我的XAML的简化版本:
FindName("textBoxAnswer")
答案 0 :(得分:2)
为ContentPresenter
命名(我假设它是cpAnswer
),然后使用模板的FindName
方法访问文本框:
TextBox textBoxAnswer = cpAnswer.ContentTemplate.FindName("textBoxAnswer", cpAnswer)
as TextBox;