【问题标题】:NullReferenceException Error When Trying to Change the Property IsEnabled of an AppBar Item尝试更改 AppBar 项的 IsEnabled 属性时出现 NullReferenceException 错误
【发布时间】:2013-07-25 19:18:16
【问题描述】:

在我的一个 .xaml 页面上,我有一个带有几个图标的应用栏。

其中一个图标将页面固定到“开始”,因此当它被固定时,我想将该图标的 IsEnabled 属性更改为 false。

但是我得到了这个奇怪的错误;调用此过程时,如标题中所述。

代码如下:

if (Tile == null) { }
else { appBarPin.IsEnabled = false; }

有什么想法吗?

【问题讨论】:

  • 当您尝试设置 IsEnabled 时,appBarPin 可能为空。我们需要查看更多代码才能确定。

标签: c# windows-phone-7 windows-phone-8 tiles


【解决方案1】:

应用程序栏的行为与其他 UI 元素不同。来自App bar for Windows Phone

应用栏不支持控件的一些常用功能,例如 数据绑定。结果,您无法更改图标按钮和菜单 使用您在 XAML 中设置的名称属性的项目文本。

如果要更改应用栏项的属性,请按以下方式进行:

ApplicationBarIconButton button = (ApplicationBarIconButton)ApplicationBar.Buttons[0];
button.IsEnabbled = false;

0 替换为按钮的索引。 IE。如果按钮是应用栏的第二个按钮,则索引为 1。

How to change app bar icon buttons and menu items dynamically for Windows Phone中查看更多信息

【讨论】:

    【解决方案2】:

    空引用异常意味着如果点之前的内容为空,则不能说“.IsEnabled”。

    appBarPin 似乎为空。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-21
      相关资源
      最近更新 更多