【问题标题】:Access to all controls from a WPF windows从 WPF 窗口访问所有控件
【发布时间】:2009-08-27 17:24:51
【问题描述】:

我在 Visual Basic 2008 中实现了一个函数,它从 System.Winows.Form 对象中获取所有控件的内容,并返回与该内容对应的哈希值。这个函数的使用是检测用户是否修改了页面的内容,并判断我是否要显示一个消息框要求保存。我尝试在 WPF 中执行此操作,但似乎无法获取表单中的所有控件。 有什么办法可以做到这一点,或者更好,有没有可以满足我需要的功能?

谢谢,

【问题讨论】:

    标签: wpf controls


    【解决方案1】:

    抱歉,我认为这是一种非常糟糕的检测变化的方法。更好的方法是简单地跟踪视图模型中的更改并公开一个脏标志。

    也就是说,您可以使用LogicalTreeHelper(或VisualTreeHelper)递归遍历WPF 树并找到您感兴趣的控件。

    【讨论】:

      【解决方案2】:

      我使用这种方法的原因是因为我需要该信息用于其他目的,而且我能够“配置”该方法以满足不同的需求。坦率地说,我不知道您所说的视图模型是什么意思。我是 WPF 的新手,所以如果里面有什么东西,那么我怀疑我以前听说过它。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多