问题标签 [generic.xaml]

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.

0 投票
3 回答
3006 浏览

c# - WPF 在 generic.xaml 模板中使用图像

我正在为直接从 Control 派生的自定义控件编写样式。Visual Studio 将“自定义控件 (WPF)”的样式放在 Themes\generic.xaml 文件中。我的样式包含我无法显示的图像,似乎关于如何从 generic.xaml 文件中设置图像的源有一些特别之处。

我设法用一个更简单的场景重现了这个问题。创建一个“WPF 自定义控件库”,然后在 Themes\generic.xaml 中为按钮添加样式。这是我完整的 generic.xaml:

在此之后,我创建了一个 UserControl(在同一个项目中),其中只包含一个按钮(为了测试样式),如下所示:

我在项目根目录中添加了 SmallHandle.png,在主题目录中,我也将它添加到了良好的旧资源页面,尝试将构建操作更改为资源,嵌入资源,尝试手动将图像复制到构建目录,但没有效果。图像永远不会显示。

这必须与 generic.xaml 文件相关,因为将整个样式复制到放置 Button 的同一文件中可以正常工作。也就是说,以下工作按预期工作:

那么,我应该如何从 generic.xaml 设置图像的来源?或者,我应该将自定义控件的样式/模板放在哪里?

- - 解决方案 - -

正如 Sheridan 所指出的,我必须使用“完整”包 URI 表示法:

这对我来说看起来很奇怪,因为图像在同一个程序集中。不确定,看起来我是从 dll 外部引用的。

0 投票
1 回答
226 浏览

xaml - 样式定义后没有显示循环选择器?

我想更改 的边框颜色,LoopingSelector所以我将 Generic.xaml 的样式定义LoopingSelectorItem(如下所列)复制到我的PhoneApplicationPage.Resources. 然后将Fillof更改GridRed.

现在的问题是,当我在模拟器中打开这个应用程序时,LoopingSelector并没有立即出现。但是只要我触摸选择器应该所在的屏幕区域,它就会显示出来,并且边框颜色就是我想要的。这看起来像一个初始化问题,但我不知道该怎么做。我尝试复制此样式定义,而不对原始 Generic.xaml 进行任何更改,但问题仍然存在。任何人都可以帮助我解决这个问题吗?

0 投票
0 回答
348 浏览

wpf - Generic.xaml 无效 XAML 错误

例如,我有 2 个自定义控件。

A.csB.cs

Generic.xaml

而且没有B风格

B是继承ContentPresenter

当我构建项目时,我得到了 Invalid XAML 错误,但它已经构建了 dll 文件。

如果我将它用于其他项目。

它会StackOverflowException进入WindowsBase.dll

0 投票
1 回答
935 浏览

c# - 通用应用程序 TextBlockButtonStyle

我正在将我的 WinRT 8.1 页面移动到共享项目(通用应用程序)。然而,样式“TextBlockButtonStyle”在 WP8.1 应用程序中给出了一个例外。它不适用于WP8.1吗?如果没有,是否有一份清单可以提供线索,哪些是常见的风格,哪些不是?

谢谢,

赵敏

0 投票
2 回答
778 浏览

c# - 覆盖同一解决方案中另一个项目的 Generic.xaml 资源字典资源

我有一个解决方案,其中我有一个 Windows Phone 应用程序项目和一个 ClassLibrary,它本身具有TemplatedControl.cs其默认样式在ClassLibrary/Themes/Generic.xaml资源字典中引用。

例如,我在 Generic.xaml 文件中定义了这个:

如何从我的 WP 应用程序中更改 this 的值SolidColorBrush,使其影响 ClassLibrary 中使用此资源的每个元素?

0 投票
1 回答
751 浏览

wpf - 覆盖 generic.xaml 中定义的样式会导致合并样式

我有一个在单独的资源字典中定义的样式的控件,并使用 generic.xaml 魔法来应用它。

如果我了解 msdn 上描述的查找机制(https://msdn.microsoft.com/de-de/library/ms750613%28v=vs.110%29.aspx),则在应用程序资源之后使用 generic.xaml,但是为 MyWindow 添加样式将导致来自 generic.xaml 的样式 + App.xaml 中定义的样式。

这是我的代码:

通用的.xaml

应用程序.xaml

该窗口将具有粉红色背景(来自 application.resource 样式)和“默认!” 作为 generic.xaml 样式的标题。

为什么 wpf 不停止在应用程序级别搜索样式?

0 投票
0 回答
363 浏览

c# - 无效的标记 Visual Studio 2015 社区

我对 C# 和 .XAML 还很陌生,在查看 .XAML 文件的 UI 时遇到了一些问题。

我收到“无效标记”错误,在 .XAML 代码中,我收到错误

名称空间“clr-namespace:Microsoft.crm.UnifiedServiceDesk.Dynamic;Assembly=Microsoft.Crm.UnifiedServiceDesk.Dynamics”中不存在名称“DynamicBaseHostedControl”。

我的 .XAML 文件中的第一行代码是:

USD:DynamicsBaseHostedControl x:Class="X.CTIHostedControl.CQAPhonecallInteraction"

错误消息在 <USD:DynamicsBaseHostedControl.

该文件保存在 C:\Users\first.last\Desktop\X.CTIHostedControl-V2\X.CTIHostedControl-V1 - Copy\X.CTIHostedControl 下,因此共享保存环境不是问题。我还尝试在解决方案资源管理器中右键单击该文件,然后单击“清理”并重新启动,但这也不起作用。

有趣的是,我的 X.CTIHostedControl 解决方案中的一个文件可以工作并生成一个 UI。第一行的代码是<Window x:Class="X.CTIHostedControl.CallTransfer"

对我来说,这意味着使用<USD:DynamicsBaseHostedControl与使用时出现了问题Window x:Class

谢谢!

0 投票
1 回答
361 浏览

combobox - ComboBox 上的 DisplayMemberPath 不起作用但绑定似乎正确,无法显示 DisplayMemberPath

今天我在这个问题上花了很长时间,所以我把它作为一个问题发布,然后发布答案,这样就可以避免我在过去 183 分钟里经历的那种挫败感。

这是我的源代码的简单版本(也许你的看起来像这样)

.xaml(视图):

.cs(视图模型):

所有代码都可以完美运行,并且相同的 (.cs) ViewModel 甚至可以在另一个 (.xaml) 视图中正确显示,但在视图中它无法正常工作。确切的问题是第一次打开视图时 ComboBox 中没有文本,即使 DisplayText 有一个值!断点显示 DisplayText 值正在正确计算以及所有内容,但在第一次打开视图时不会显示该值。

0 投票
0 回答
28 浏览

c# - C#-访问 .xaml 创建的复选框/列表框

有没有办法验证复选框和列表框中的特定项目是否已被选中,当它在.xaml 中创建时?

我试图从不同的类而不是 ViewModel 访问这些元素。

我希望能够做以下事情;

.XAML 代码:

当前代码:

0 投票
1 回答
225 浏览

wpf - 如何使用 BasedOn 模板化 Generic.xaml 中的切换按钮?

wpf C# xaml

在我的 Generic.xaml 中,我有许多样式的表单:

所有这些切换按钮之间的唯一区别是路径定义和填充颜色。

是否可以以仅需要提供路径和填充颜色的方式对这种样式进行模板化/简化?

这类似于:

感谢您的任何帮助。

编辑#1 好吧,我以为我知道了——我错了。下面的代码将正确设置路径数据和填充属性。但是,只有第一个创建的 ToggleButton 保留了“MouseOver”和其他 ControlTemplate.Triggers。我需要RingControl 中的所有切换按钮来尊重它们自己的触发器。

Generic.xaml -- BaseButtonStyle

Generic.xaml -- ModifiedButtonStyle1

Generic.xaml -- 在自定义控件 RingControl 中使用 ModifiedButtonStyles

在用户界面中使用 RingControl2:

似乎单击 RingButtons2 控件中的任何位置只会导致第一个定义的切换按钮响应——而不是其他任何一个。

我该如何解决这个问题,以便每个切换按钮独立于其他按钮并尊重其自己的 controltemplate 触发器?

再次感谢。

编辑#2

从 BaseButtonStyle 中删除 TextBlock 定义后,

一切正常!为什么是这样??

谢谢。