在 Visual Studio 调试器中看不到事件实现接口
Cannot see event implementing interface in Visual Studio debugger
我有以下 C# class:
public class SignInViewModel : ISwitchable
{
IChildViewModelFactory _factory;
// Implement ISwitchable interface.
public event EventHandler<object> SwitchEvent;
public SignInViewModel(IChildViewModelFactory factory)
{
_factory = factory;
}
...
}
当我在 Visual Studio 2019 调试器中检查 value
时,我看不到 SwitchEvent
字段作为成员:
((ISwitchable)value).SwitchEvent += ChildViewModel_SwitchEvent; // value is SignInViewModel instance.
我尝试了以下方法,但得到了相同的结果:
ISwitchable temp = (ISwitchable)value;
temp.SwitchEvent += ChildViewModel_SwitchEvent;
temp
仅将 _factory
和 SignInViewModel()
构造函数显示为 class 成员。
如何查看SwitchEvent
实现接口的事件?
SwitchEvent
不是字段。这是一个事件,没有值但分配了处理程序方法
您需要做的是像这样调用您的事件
if (SwitchEvent != null)
(SwitchEvent(this)); // 'this' is a sender
看看这个 - how to view event handler assignment
我有以下 C# class:
public class SignInViewModel : ISwitchable
{
IChildViewModelFactory _factory;
// Implement ISwitchable interface.
public event EventHandler<object> SwitchEvent;
public SignInViewModel(IChildViewModelFactory factory)
{
_factory = factory;
}
...
}
当我在 Visual Studio 2019 调试器中检查 value
时,我看不到 SwitchEvent
字段作为成员:
((ISwitchable)value).SwitchEvent += ChildViewModel_SwitchEvent; // value is SignInViewModel instance.
我尝试了以下方法,但得到了相同的结果:
ISwitchable temp = (ISwitchable)value;
temp.SwitchEvent += ChildViewModel_SwitchEvent;
temp
仅将 _factory
和 SignInViewModel()
构造函数显示为 class 成员。
如何查看SwitchEvent
实现接口的事件?
SwitchEvent
不是字段。这是一个事件,没有值但分配了处理程序方法
您需要做的是像这样调用您的事件
if (SwitchEvent != null)
(SwitchEvent(this)); // 'this' is a sender
看看这个 - how to view event handler assignment