如何手动重新加载WPF的Visual Studiodevise器

有没有办法强制WPFdevise器重新加载或刷新,而不重build整个项目或解决scheme?

如果出现错误,我会在devise器视图中获得一个选项来刷新devise器。 但是,如果我没有错误,我怎么能让devise师在我做出改变之后更新?

我有点晚了,但这是迄今为止我发现的最好的解决scheme:每当devise师做出愚蠢的事情,我就干掉它的过程。

Ctrl + Shift + Esc
导航到“进程”选项卡。
杀死XDesProc.exe

这也解决了属性窗口的问题(例如,当它被卡住,你不能input的东西)。

1这是devise师问题的解决scheme。 您的问题也可能由编译问题引起,在这种情况下,只需右键单击解决scheme资源pipe理器中的解决scheme,然后清除它。 其原因是有时编译与XAML生成的文件失去同步性,清除解决scheme只是删除那些中间文件; 这就像一个重置,所以你的编译可以开始一个干净的石板。


快速做到这一点:

舒适地,它通常是最后一个,如果按字母顺序sorting。
当它是,这几乎就像一个仪式,我快速popup任务pipe理器,点击任何进程,按结束删除input (完成), Esc (退出任务pipe理器)。 而不是重新启动VS并等待所有的加载和卸载,你可以在1-2秒内完成。

您可以将其添加到Visual Studio中的“ Tools菜单。

configuration完成后,使用Tools..XAML Designer Restart

Alt + T然后L

在这里输入图像说明

在这里输入图像说明

我尝试configuration为Alt + T然后X,但这与Tools..Choose ToolboX Items冲突。

更新

这些天,我更喜欢按Ctrl + Shift + Esc来调出进程pipe理器,然后X跳到XDesProc.exe然后删除来杀死stream氓进程。

在较新版本的Visual Studio中,devise器底部有一个图标,用于“禁用项目代码”。 如果你closures它,它将重新加载devise器。

Visual Studiodevise器尝试使呈现的视图与XAML保持同步。 这是广告的行为。

  • 你应该检查的第一件事是在错误窗口中没有错误。 这可能是一个简单的缺angular尖括号。
  • 第二件要检查的是你是否有任何代码(除了你的代码隐藏)需要编译的devise师正确呈现您的XAML。 这包括您在XAML中实例化的任何自己的数据types,您编写的任何自定义控件(例如从TextBlock派生的MyTextBlock),或直接或间接支持devise时数据的任何类。 如果是这样,你需要重build你的项目。
  • 最后要检查的是devise师可能存在的错误。 尽pipe广告的行为,devise师可能会由于错误而失去同步。 在那附近,closuresXAML窗口并重新打开它。 其他的技巧可能是selectXAML选项卡,然后selectdevise选项卡,或最大化XAML窗格。

至于重build你的应用程序,你不需要做这个习惯。 上述条件适用时,您只需重新编译即可。 一旦他们不适用,你可以编辑XAML。 另一种说法是,如果你没有修改代码,你不需要重新编译(模块化错误)。

我不确定,但是我认为在这种情况下,构build会刷新你的观点。

至less在理论上,Design View总是与XAML同步,所以不需要手动刷新。 请问在什么情况下你想重新加载?

在该XAML文件中处理了任何事件,则大多数情况下不会显示Visual Studio中的devise预览。 如果您想从Visual Studio中查看devise,请尝试使用Command Binding而不是事件,您将看到预览。

我不知道这是如何工作在WPF编辑,但与ASP.NET页面时,devise视图不会更新我可以做2件事情

  1. 退出Visual Studio并重新启动
  2. 进入源代码视图(不拆分),键入一些东西,并删除它(而不是撤消,只是删除或backspare),并保存它。 然后返回到devise视图,通常视图已被更新。

当您添加一行新代码或一个新对象时,XAMLdevise器是同步的,但是当对象的属性发生更改时,我遇到了非同步行为。

一个棘手的方法是,当你改变一个属性,你只需要从指令的末尾删除一个“>”字符,然后重新input。