将 class 声明为 window 资源时的空引用
null reference when declaring a class as a window resource
我无法从后面的 MainWindow 代码访问 class。
我写了这个class:
namespace WpfApp1.Management
{
public class BookManagement : INotifyPropertyChanged
{ ...
在主窗口中引用:
<Window
x:Class="WpfApp1.MainWindow"
x:Name="mainWindow"
...
xmlns:mangmt="clr-namespace:WpfApp1.Management"
作者:
<Window.Resources>
<mangmt:BookManagement x:Key="bookManagement" />
</Window.Resources>
事实是我需要从 MainWindow.cs 访问 bookManagement,我试过这个:
BookManagement bm= Application.Current.Resources["bookManagement"] as BookManagement;
bm.SelectedTab = "summary";
但是我在运行时遇到空引用异常。
谢谢。
它是您 MainWindow
资源的一部分,而不是应用程序的一部分:
<Window.Resources>
<mangmt:BookManagement x:Key="bookManagement" />
</Window.Resources>
改为使用此检索:
Application.Current.MainWindow.Resources["bookManagement"]
我无法从后面的 MainWindow 代码访问 class。
我写了这个class:
namespace WpfApp1.Management
{
public class BookManagement : INotifyPropertyChanged
{ ...
在主窗口中引用:
<Window
x:Class="WpfApp1.MainWindow"
x:Name="mainWindow"
...
xmlns:mangmt="clr-namespace:WpfApp1.Management"
作者:
<Window.Resources>
<mangmt:BookManagement x:Key="bookManagement" />
</Window.Resources>
事实是我需要从 MainWindow.cs 访问 bookManagement,我试过这个:
BookManagement bm= Application.Current.Resources["bookManagement"] as BookManagement;
bm.SelectedTab = "summary";
但是我在运行时遇到空引用异常。
谢谢。
它是您 MainWindow
资源的一部分,而不是应用程序的一部分:
<Window.Resources>
<mangmt:BookManagement x:Key="bookManagement" />
</Window.Resources>
改为使用此检索:
Application.Current.MainWindow.Resources["bookManagement"]