Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows phone禁用应用程序栏按钮_C#_Silverlight_Windows Phone 7_Application Bar - Fatal编程技术网

C# Windows phone禁用应用程序栏按钮

C# Windows phone禁用应用程序栏按钮,c#,silverlight,windows-phone-7,application-bar,C#,Silverlight,Windows Phone 7,Application Bar,那么,我的问题是什么?我有一个弹出窗口,当我打开它时,我想在我的windows phone应用程序中禁用当前页面。所以我把这个this.IsEnabled=false但我的应用程序栏仍然可用。当然,我会尝试: ApplicationBar.IsMenuEnabled = false; 我的下一个想法是这样做: for (int i = 0; i < ApplicationBar.MenuItems.Count; i++) { ((ApplicationBarMenuItem)Ap

那么,我的问题是什么?我有一个
弹出窗口
,当我打开它时,我想在我的windows phone应用程序中禁用当前页面。所以我把这个
this.IsEnabled=false但我的
应用程序栏
仍然可用。当然,我会尝试:

ApplicationBar.IsMenuEnabled = false;
我的下一个想法是这样做:

for (int i = 0; i < ApplicationBar.MenuItems.Count; i++)
{
    ((ApplicationBarMenuItem)ApplicationBar.Buttons[i]).IsEnabled = false;
}
for(int i=0;i

但仍然没有结果。我确信之前已经有人这样做了,你能告诉我怎么做吗?

只需包含使用Microsoft.Phone.Shell在.cs文件中提取名称空间,你就可以执行以下操作:

ApplicationBar.Enable();


根据

的说明,应用程序栏由按钮集合和菜单项集合组成。举个例子,你可能想尝试一下

foreach (var button in ApplicationBar.Buttons)
{
    ((ApplicationBarIconButton) button).IsEnabled = false; // disables the button
}

ApplicationBar.IsMenuEnabled = false; // this will prevent menu from opening
如果这不起作用,您是否考虑过隐藏应用程序栏?

ApplicationBar.IsVisible=false

不幸的是,根据我们的说法,存在一个错误,这意味着设置
ApplicationBarMenuItem
IsEnabled
属性直到菜单关闭并重新打开后才会生效。

尝试以下操作:

xaml:

这个怎么样

((ApplicationBarIconButton)this.ApplicationBar.Buttons[1]).IsEnabled = true;
其中[1]是要启用/禁用的按钮的索引

我知道这是一个事实,因为我有在WindowsPhone8应用程序中使用它的代码

你能帮我们发一些代码吗

<shell:ApplicationBar IsVisible="False">
Dispatcher.BeginInvoke(() =>
            {
                UIHelper.ToggleVisibility(Canvas_LocationAR_Trans);
                UIHelper.ToggleVisibility(Grid_LocARLoadingGrid);
                **ApplicationBar.IsVisible = true;**
            });
((ApplicationBarIconButton)this.ApplicationBar.Buttons[1]).IsEnabled = true;