问题标签 [visual-studio-designer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何防止 Visual Studio 在设计器上触发事件?
我有一个用户控件,它应该在可见性或启用状态发生变化时触发一个事件。
我的问题是 Visual Studio 的设计器也会触发事件,这很烦人,因为在设计过程中它们会出现意想不到的行为。
我怎样才能防止这种情况?
uwp - UWP 设计器停止工作
所以我已经在这个 UWP 项目(visual studio 2017)上工作了几个月,就在最近设计师停止工作(它显示正在加载设计器......您可以在设计师在后台加载时继续工作。)我已经尝试过该项目的早期工作版本,但这并没有解决问题。有帮助的一件事是我制作了包含解决方案/项目的文件夹的就地副本。打开此解决方案(使用相同的代码)按预期工作。那么是否有一些临时文件或阻止原始版本正常工作的东西?我想我可以使用的解决方案是只处理新复制的目录,但如果有其他解决方案可用,我宁愿使用它,因为这可能会再次发生。不知道为什么它首先会诚实地发生。
c# - VS 2017 XAML 设计器视图不在一个解决方案中呈现自定义/用户控件,而是在新解决方案中呈现
我有一个 WPF 解决方案,我相信设计查看器在某些时候停止正确呈现我编写的自定义控件和作为用户控件的 LiveCharts 笛卡尔图表。需要明确的是,当将这些控件添加到 XAML 设计器中的页面时,这些控件存在但不可见 - 即未呈现。您可以选择控件并查看边界矩形,但看不到实际控件。如果我运行应用程序,控件会在运行时正确呈现并可用......它们只是不会出现在 XAML 设计器视图中。
如果我创建一个全新的解决方案/项目,那么这两个控件在设计器视图中都显示得很好。但是,如果我将一个项目添加到有问题的解决方案中,我会遇到同样的不可见问题。
我已经比较了解决方案/项目,但找不到任何差异。显然,我对必须导致此问题的原始解决方案做了一些事情,但我无法弄清楚是什么或如何解决它。
有没有人看到这个或有什么想法来解决它?
c# - VS 2017 Designer:找不到方法(静态方法)
我有一个包含用户控件(每个都在单独的程序集中定义)的 Windows 窗体。控件调用工厂方法(在另一个程序集中定义)来创建 DataGridView CheckBox 列:
代码编译运行良好,可以在 Visual Studio 2017 Designer 中打开控件。
但是,如果我尝试在 VS 2017 Designer 中打开包含表单,则会收到以下错误:
找不到方法:'System.Windows.Forms.DataGridViewCheckBoxColumn DataGridViewUtilities.CreateCheckBoxColumn(System.String,Boolean,System.String,Boolean,System.Windows.Forms.DataGridViewAutoSizeColumnMode,System.Windows.Forms.DataGridViewColumnSortMode,Int32)'。
调用堆栈是:
注释掉调用 CreateCheckBoxColumn() 的行允许在 VS Designer 中正确打开包含表单。
CreateCheckBoxColumn() 声明为:
奇怪的是,控件调用了与 CreateCheckBoxColumn() 相同的类中定义的类似静态方法,并且其他方法不会干扰打开表单。
我尝试重建,手动删除所有 3 个项目的内容 obj 和 bin 目录,以及 AppData\Local\Microsoft\VisualStudio\15.0_6d397e1a\ProjectAssemblies 的内容,关闭 VS 2017 中所有打开的文档,关闭解决方案,然后重新启动Visual Studio,它没有任何区别。
我尝试将一个新的(测试)表单添加到同一个项目(包含无法在可视化设计器中打开的表单的项目),并通过从工具箱中拖动它来添加有问题的控件。但是,当放下控件时,会出现一个错误对话框,说
出了什么问题,我该如何解决这个问题而不必注释掉代码以在设计器中打开控件?
visual-studio - 没有自定义 ChromeWindow 的 XAML 设计器预览
我一直在尝试构建自定义 chrome 窗口与没有边框样式的窗口。在 Visual Studio 中,XAML 设计器在内容区域中显示自定义标题栏,而实际的内容区域控件不可见。当我编译并运行它时,一切看起来都是正确的。
另一个问题是我似乎无法正确设置标题栏按钮上的 Command 绑定。我尝试将它们绑定到适当的 SystemCommands 但我也不确定我在那里做错了什么。因此,我只是添加了单击事件处理程序并在那里执行代码。只是尝试为此提供仅 XAML 的解决方案。Click 事件处理程序正常工作。
下面是我的 XAML。XAML 的末尾是一个带有 TextBlock 的基本 Grid,上面写着“我应该是可见的!” 但它不在设计器中。
还附上(如果我有权限这样做)是设计器在我的 Visual Studio 中的样子的屏幕截图。如您所见,我放置在自定义标题栏中的控件清晰可见。您还将在屏幕截图中看到默认窗口标题栏也是可见的。
谁能指出我为什么我的设计师不是所见即所得的正确方向?
c# - Visual Studio WPF 设计器不使用覆盖的 SystemColors
我目前正在尝试覆盖 WPF 系统颜色。从这里我发现这可以通过创建一个新的 SolidColorBrush 资源来完成,例如x:Key="{x:Static SystemColors.WindowBrushKey}"
更改窗口背景颜色的键。
这已经有效,但是 Visual Studio WPF 设计器不会将新颜色显示为窗口的背景。
从一个干净的 WPF 应用程序开始,这就是我的 XAML 代码在 MainWindow 中的样子:
在 Visual Studio 设计器中,这看起来像这样:
如果我运行它,这就是生成的应用程序:
将SolidColorBrush
Resource 添加到 App.xaml 资源也不会改变这一点。我错过了什么新定义的 SystemColor 也在设计器中使用?
visual-studio - Visual Studio 2017 Xamarin Designer 不显示内容,即使它以前有
我正在使用带有 Xamarin 扩展的 Visual Studio 2017。我遇到了一个问题,设计器视图只显示空白,而不是我添加到 axml 文件的布局和内容。我尝试寻找解决这个问题的方法,发现了一个与我相关的问题——<a href="https://stackoverflow.com/questions/48857946/android-designer-is-not-showing-in-visual-studio- xamarin">Android Designer 未在 Visual Studio Xamarin 中显示,但它没有解决我的问题,因为我的 axml 位于 Resources > layout 文件夹中。前几天我从完全相同的硬盘驱动器打开了我的解决方案,Designer 正确显示了所有内容,但现在我的内容没有显示。这是设计器和 axml 代码的图像
c# - VS 设计时数据上下文(示例数据)包含异常
应用
这是一个 WPF 应用程序,用于在客户端之间发送文件。我正在开发一个用户控件,用于显示已发送文件、其收件人等的列表。
设置
我正在尝试设置控件的样式,但我需要示例数据来填充它。按照这些说明,我创建了一个SampleFilesSource.cs
扩展DataSourceProvider
。它生成视图的视图模型的实例,其中填充了ObservableCollection
随机最近的文件。
接下来,在视图中,我设置了设计时间DataContext
:
但是什么也没有出现……发生了什么事?
数据绑定异常
好吧,走着瞧。Blend 中的数据窗格允许我们查看设计时DataContext
可用于绑定的内容。让我们来看看。
嗯,这很有趣。我的DataContext
. 数据窗格不显示任何值,只显示可以绑定的字段。那么如何查看异常Message
?我可以绑定它吗?
绑定到它
不幸的是没有......事实上,当我尝试时,我可以输出任何文本的唯一绑定是“(集合)” {Binding Data.RecentFiles}
。字段在对象下可见Data
,但没有任何值。
但是,如果我将运行时设置DataContext
为示例数据生成器呢?只需d:
从DataContext
标签中删除那一点并调试......仍然没有运气。通过查看实时可视化树,我可以看到DataContext
绑定到视图模型的一个实例。有趣的是,这次 datacontext 中唯一的东西是一个Error
字段。
Data
运行时没有字段,并且该Error
字段是Exception
. 我认为它是空的。属性浏览器只有一个空框,没有查看它的选项。我认为调试会话中没有出现未处理的异常很奇怪。它卡在DataContext
不知何故?
调试
因此,除了清理、重建、重新启动 VS、重新启动计算机以及我已经尝试过的任何其他方法之外,我还能做些什么来看看Message
呢?这是一个方便的小指南,用于将调试器附加到 Visual Studio 的设计器进程。很酷!
我只能从调试器中学到一些东西:
- 我生成的视图模型
DataSourceProvider
是有效的,看起来不错,没有抛出异常。 - 我
DataSourceProvider
的Error
字段在离开我的代码时为空。
所以我只能说异常发生在我调用之后DataSourceProvider.FinishQuery
,并且在设计者得到它之前生成的DataContext
。
结论
我难住了。有任何想法吗?
更新
我创建了一个最小示例来分享,果然异常确实出现在表达式混合的数据窗格中。但是,我实际上可以绑定到示例中生成的示例数据,所以现在我认为异常是红鲱鱼,我的问题在其他地方。我什至不确定是否存在异常,并且“数据”窗格仅显示它的作用,因为那里可能存在异常。
如果其他人想偷看,这是示例。
c# - VS 在启动调试器时卡在“正在加载”
这发生在将 Visual Studio 更新为16.2.0
:
Start Debugging
> Building started
> Building succeeded
>App launches [Suspended]
Loading... [Stuck/VS instance blocked]
其他项目运行良好,在没有调试器的情况下运行也是如此。
是什么原因造成的以及如何解决?
更新:
结果证明这是设计师(或与之相关)的问题。现在,如果我打开项目,它会卡在加载设计器上。我遇到了这篇文章,它在接受的答案中有一个解决方法,即删除项目.sln
文件并改用该.csproj
文件。这也修复了开始调试时卡住的问题。
我尝试查找此问题,但没有找到答案。