启动第二个应用程序的 WPF 应用程序不会在第二个应用程序中显示 XAML 工具栏

问题描述 投票:0回答:1

我正在开发一个 WPF 应用程序,它有一个“启动器”应用程序,可以实例化在自己的窗口中运行的其他 WPF 应用程序。我打开了运行时 XAML 工具栏,并且它在“启动器”应用程序中正确显示。但是,在它实例化的后续 wpf 应用程序中,标题栏中没有 xaml 工具栏,这确实减慢了布局更改。 .

是否有办法为解决方案中的所有窗口打开该工具栏? 谢谢! 哈利

解决方案中没有设置可以为解决方案中拥有自己的窗口的所有项目启用此功能。

wpf xaml
1个回答
0
投票

您可以使用 Microsoft Child Process Debugging Power Tool 2022 扩展来调试子进程。我将它用于我的一个项目。这就是我的项目中的配置(view)。

<?xml version="1.0" encoding="utf-8"?>
<ChildProcessDebuggingSettings IsEnabled="true" xmlns="http://schemas.microsoft.com/vstudio/ChildProcessDebuggingSettings/2014">
  <DefaultRule EngineFilter="[inherit]" />
  <Rule IsEnabled="true" ProcessName="SAM.Manager.exe" EngineFilter="{2e36f1d4-b23c-435d-ab41-18e608940038}" />
  <Rule IsEnabled="false" ProcessName="" EngineFilter="[inherit]" />
</ChildProcessDebuggingSettings>

就工具栏而言,我不使用 WPF 设计器或其他任何东西,我将其禁用。为了能够测试这两个应用程序,我为它们创建了启动配置文件,以便我可以在必要时检查实时 XAML 树视图和运行时的所有内容。

这是我创建的两个

launchSettings.json
文件。通常,启动
SAM
项目,然后向任何
SAM.Manager
进程传递一个参数以启动。

我猜您已经完成了项目依赖项的所有设置,并将其他可执行文件复制到主可执行文件的构建输出。如果您需要参考,here 是解决方案中的主要

.csproj
文件 (
SAM
)。

总结一下,如果您希望能够使用热重载功能和为子应用程序创建启动配置文件的内容,以便可以直接运行它,我建议您这样做。除此之外,您可以使用 Blend 进行 UI 工作,因为它仍然与 VS 捆绑在一起。您唯一的其他选择是使用类似 Snoop 的东西,但它并非没有局限性。

© www.soinside.com 2019 - 2024. All rights reserved.