VisualBrush из окна в другом окне

В общем, MainWindow открывает второе окно, скажем, OptionsWindow. Итак, в окне параметров я хочу показать визуальный элемент главного окна. Я попробовал это, но не сработало:

<Rectangle Grid.Row="1" Margin="3" Height="100">
    <Rectangle.Fill>
        <VisualBrush Visual="{Binding Application.Current.MainWindow}" />
    </Rectangle.Fill>
</Rectangle>

Любая помощь с благодарностью.

РЕДАКТИРОВАТЬ:

Я нашел очевидный ответ:

windowPreview.Visual = Application.Current.MainWindow;

Единственное, что странно, это то, что он снова вызывает событие Loaded MainWindow, и у меня есть некоторый код, который должен запускаться только при первой загрузке MainWindow. Я хотя бы просто показал текущий экземпляр MainWindow. Любой обходной путь на этом?

1 ответ

Если вы поместите код загрузки в конструктор для MainWindow, он должен вызываться только один раз за экземпляр.

Я не уверен, если это ошибка, что WPF вызывает событие Load более одного раза для любого данного окна, но это звучит так, как будто это может быть задумано для случаев, когда пользователь закрывает и перезагружает окно...

Другие вопросы по тегам