【问题标题】:LinqPad WPF window InvalidOperationException on second execution第二次执行时 LinqPad WPF 窗口 InvalidOperationException
【发布时间】:2013-09-12 00:46:00
【问题描述】:

我尝试在 LinaPad 上打开一个包含我的 WPF 用户控件的 WPF 窗口。

var w = new System.Windows.Window() { Content = myControl };
w.ShowDialog();

此代码仅适用于打开查询选项卡后的第一次执行。 如果我再次执行代码,那么它会抛出 InvalidOperationException 说

Cannot use a DependencyObject that belongs to a different thread than its parent Freezable

LinqPad中第一次执行环境和后面执行环境有什么区别吗?

【问题讨论】:

    标签: wpf linqpad freezable


    【解决方案1】:

    我猜你已经在另一个线程上创建了myControl

    以下内容对我来说没有错误:

    var w = new System.Windows.Window() { Content = "foo" };
    w.ShowDialog();
    

    另一种解决方案是简单地转储 myControl:

    myControl.Dump();
    

    LINQPad 然后将在其输出窗口中呈现它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-25
      • 1970-01-01
      • 2020-06-26
      • 1970-01-01
      • 1970-01-01
      • 2018-12-06
      • 1970-01-01
      相关资源
      最近更新 更多