【问题标题】:Determine who/what called Set Property确定谁/什么调用了 Set Property
【发布时间】:2010-02-12 07:51:27
【问题描述】:

我正在尝试确定称为Set property 的控件。假设文本框 Pet 绑定到一个属性。我正在使用INotifyPropertyChanged,但我想知道是否有办法获得实际控制权。

我的PropertyChanged Event 中的sender 是包含属性的,而不是最初踢出导致事件发生的事件链的控件提出来。

这可能吗?有没有更简单的方法?

【问题讨论】:

    标签: c# .net properties set inotifypropertychanged


    【解决方案1】:

    你可以去捕获StackTrace,例如。

    var methodBase = new StackTrace().GetFrame(1/* depends on your depth*/).GetMethod();
    var reflecedType = methodBase.ReflectedType;
    var methodName = methodBase.Name;
    

    【讨论】:

      【解决方案2】:

      如果您需要知道哪个控件做了某事,只需将一个事件附加到该控件并在视图的代码隐藏中处理该事件。

      应用了绑定的 INPC 模型对象应该与视图无关...

      这适用于 WPF 或 Winforms,但出于好奇,您使用的是哪一个?

      【讨论】:

      • winform 我明白你在说什么,我想。我想它会把我的对象绑得太紧。
      猜你喜欢
      • 2011-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-29
      • 2012-09-23
      • 2014-10-10
      • 1970-01-01
      相关资源
      最近更新 更多