C# PropertyChangedEventHandler使用问题
我有一个事件,C# PropertyChangedEventHandler使用问题,c#,.net,wpf,C#,.net,Wpf,我有一个事件,propertychangedventhandler,我这样提出它: PropertyChanged(this, new PropertyChangedEventArgs("LogFile")); PropertyChanged(this, new PropertyChangedEventArgs("Nodes")); 我还附上: PropertyChanged += UpdateCamxWindowEvent; 仅当使用“日志文件”引发事件时,如何执行UpdateCamx
propertychangedventhandler
,我这样提出它:
PropertyChanged(this, new PropertyChangedEventArgs("LogFile"));
PropertyChanged(this, new PropertyChangedEventArgs("Nodes"));
我还附上:
PropertyChanged += UpdateCamxWindowEvent;
仅当使用“日志文件”
引发事件时,如何执行UpdateCamxWindowEvent
我应该在代码中更改什么?如果需要始终触发事件,可以在事件处理程序方法中检查事件处理程序的参数值,以确定要调用的代码指令。除非创建了另一个事件,否则无法仅对某些参数执行特定方法。您应该做的是更改
UpdateCamxWindowEvent
,以便它仅在参数为LogFile
时才实际执行某些操作
如果不能这样做,或者在应用程序中逻辑上没有意义,则可以添加一个处理程序,该处理程序只测试参数,如果参数匹配,则调用该方法:
PropertyChanged += (s, e) => { if (e.PropertyName == "LogFile") UpdateCamxWindowEvent(s,e); };
请注意,您将无法从事件中取消订阅此匿名方法。如果需要,请使用具有相同功能的普通方法。@Akram Shahda,而不是PropertyChanged+=UpdateCamxWindowEvent;