无法从C#(Windows Phone 7)访问应用程序按钮

3
我正在编写一个Windows Phone 7应用程序,希望在页面加载时以编程方式访问我的应用栏按钮。但是这些按钮总是为空。我已经尝试在以下事件中访问按钮:
  • 页面构造函数(在调用InitializeComponent之后)
  • 页面的“Loaded”事件处理程序
  • 应用程序栏的“StateChanged”事件处理程序
似乎个别按钮上没有“Loaded”事件。我是否违反了规则?为什么我不能使用C#访问应用程序栏按钮?
2个回答

5

谢谢链接,Mick。无论Peter Torr说什么,我仍然不敢相信,似乎现在使用C#访问UI树中的所有内容是一种常态。 - will
是的,我想有时候你必须要选择你的战斗。 - Mick N
明智的话语... 无论如何,最终我通过钩入应用程序栏的“StateChanged”处理程序来访问菜单项。然后我可以访问MenuItems和Buttons集合。但在你欢呼之前,请注意此时它已经被渲染,菜单项中的任何文本更改都不会出现在UI中。 - will
忘了提一下:我想知道这个问题的整个原因是为了本地化按钮文本。其他人是怎么做的呢??? - will

2
为了本地化按钮文本,在页面的 Loaded 事件处理程序中,我一直在遍历页面的 ApplicationBar.Buttons 列表,并将按钮的 Text 属性中的值替换为资源翻译。虽然有些笨拙,但似乎能够正常工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接