c# – Silverlight DataTemplate中的访问元素

即使在SO上已经存在一些相关问题,我也无法找到解决以下问题的干净解决方案.

如果我有一个多次使用的数据模板,例如TreeViewItem.HeaderTemplate,我怎样才能更改某些TreeViewItems的模板.

例如,假设我的TVI HeaderTemplate有一个文本块,根据字符串,我想使字体粗体.

我想做这样的事情:

((TextBlock)myTreeView.Items.ElementAt(0).FindName("myTextBlock")).FontWeight = FontWeights.Bold;

有人有解决方案吗? – &GT谢谢Evan

编辑:有没有办法编写泛型函数来获取基于它的名称的控件,即使它在数据模板中?

LayoutRoot.FindName( “myTextBlock”);如果myTextBlock不在datatemplate中,它将起作用.如何编写findElementInDataTemplate(string elementName,string parentName)函数?

Evan的回答不是我想要的原因是因为我正在开发一个控件.我希望使用我的控件的应用程序开发人员能够更改控件中的任何元素.如果我使用Evan的解决方案,则需要应用程序开发人员访问控件中的所有模板.可能,但不理想.谢谢!

最佳答案:

什么版本的silverlight是这个?
这个帖子来自“8月10日18:55”的哪一年?

在当前版本的SL4中似乎没有…

相关文章

如何在Silverlight4(XAML)中绑定IsEnabled属性?我试过简单的...
我正在编写我的第一个vb.net应用程序(但我也会在这里标记c#,...
ProcessFile()是在UIThread上运行还是在单独的线程上运行.如...
我从同行那里听说,对sharepoint的了解对职业生涯有益.我们不...
我正在尝试保存一个类我的类对象的集合.我收到一个错误说明:...
我需要根据Silverlight中的某些配置值设置给定控件的Style.我...