gpt4 book ai didi

wpf - 在静态方法中使用 WPF 检测设计模式

转载 作者:行者123 更新时间:2023-12-04 15:24:52 24 4
gpt4 key购买 nike

我正在使用 WPF。我有一个静态类,它执行一些在设计模式下不可用的设置。此构造函数在设计模式下由窗口调用,这会导致引发异常。

如何在静态方法中检测设计模式,以便调用适当的设计模式行为?

recommended approach不适用于静态方法。

编辑:

静态构造函数是从 xaml 调用的,所以我不能有条件地调用它(除非我将调用移至代码隐藏,我想避免这种情况)。

窗口内:<Window ... HelpProvider.Keyword="some_help_topic.html">
在类里:

static HelpProvider()
{
// Load the .chm file from an application setting (this fails at design time)

// Add a WPF command binding
}

最佳答案

在 xaml 文件中保留附加属性的可能解决方法是:

  • 将初始化代码从静态构造函数移动到附加属性更改回调。坦率地说,在静态构造函数中做这种工作并不是一个好习惯。
  • 在您附加的属性更改回调中,您有一个对您的窗口的引用。所以你可以调用DesignerProperties.GetIsInDesignMode(yourwindow)在那里并决定是否需要加载文件或任何导致问题的原因。
  • 关于wpf - 在静态方法中使用 WPF 检测设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12917566/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com