我是一位新的Windows手机开发者。我正在尝试创建菜单应用栏并想要一个动态更改文本菜单。我目前有以下代码:
<Application.Resources>
<shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" x:Key="GlobalAppBar">
<shell:ApplicationBarIconButton IconUri="/Assets/home.png" x:Name="btnHome" Text="Home" Click="btnHome_Click"/>
</shell:ApplicationBar>
</Application.Resources>
但是在代码背后我无法将文本设置为:
btnHome.Text="new name";
我还使用Google搜索并找到了以下内容:
ApplicationBarIconButton btn = (ApplicationBarIconButton)ApplicationBar.Buttons[0];
现在我收到以下错误:
An object reference is required for the non-static field, method, or property 'Microsoft.Phone.Shell.ApplicationBar.Buttons.get'
我该如何解决?
答案 0 :(得分:1)
你可以这样做:
1.在Application.Resources中定义ApplicationBar,就像你所做的一样。
2.使用C#代码在页面中实现ApplicationBar:
ApplicationBar = App.Current.Resources["GlobalAppBar"] as ApplicationBar;
3.更改ApplicationBarIconButton动态文本:
ApplicationBarIconButton btn = (ApplicationBarIconButton)ApplicationBar.Buttons[0];
btn.Text = "Hello world";