问题标签 [wpf-style]
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.
wpf - 将 XAML 文件合并到 Xaml 代码中
我想将一个仅包含样式的 XAML 文件合并到我的应用程序的 Window.Resource 中。我尝试使用 MergedDictionaries,如 WPF Reference custom resource defined in another xaml file中所述。
首先:文件名为“MyStyleDocument.xaml”,包含不同的 WPF 样式,不使用 x-Keys。
第二:
我得到结果:“查找资源字典“MyStyleDocument.xaml”时发生错误。” 该文件位于我的项目的文件夹中。
我的问题是:如何巧妙地将一个包含不同样式的 XAML 文件包含到另一个 XAML 代码中?
我的项目结构是: WPFApplication(file folder1) -> File Folder1 includes WPFApplication(file folder2);WPFApplication.sln; WPFApplication.suo; WPFApplication.v11.suo 文件夹2包括:bin(文件夹2.1);obj(文件夹2.2);属性(文件夹2.3);应用程序.xaml; 应用程序.xaml.cs;应用程序.ico;主窗口.xaml.cs;MyStyleDocument.xaml ; WpfApplication.csproj
c# - WPF/XAML 如何指定要从中加载资源的程序集?
我正在开发 WPF 类库,而不是应用程序。这是我在 c# 中制作的标签示例,我想使用 XAML 对其进行“样式化”。
为此,我有包含我的 LabelStyle 的 ressourcedictionnary,一切都在编译没有问题。
但是当我稍后使用我的 dll 时,没有应用该样式,并且出现以下错误消息:
这是我的实际 App.xaml 与页面的构建操作设置:
如何指定要从中加载资源的程序集?我对 WPF 相当陌生,我被困在这个问题上,在此先感谢。
编辑 1:
我尝试了,因为我的程序集名称是 WpfApplication1(请参见此处http://postimg.org/image/ksyj9xi5p/)
代替
并得到同样的错误。
wpf - 我可以为在第三方库中创建的窗口上的按钮提供样式吗?
是否可以在由第三方库创建和显示的窗口上设置按钮样式?
有问题的按钮依赖于这样的默认样式Button
:
由于窗口由第三方库控制,我唯一“访问”的是窗口的类型名称。
我可以为该窗口提供一个本地默认按钮样式,该样式将覆盖按钮的应用程序样式而不更改窗口的 XAML?
c# - 在 XAML 中调整控件的当前样式
假设我们有一个ListView
. 在我们的某个地方,Resources
有一个Style
forListView
正在自动应用。这Style
设置了ItemContainerStyle
:
现在我想改变ItemContainerStyle
. SpecialListView
但是我不想完全替换它。相反,我只想设置一个属性(比如说Background
)。
我能想出的唯一解决方案是命名Style
用于ItemContainerStyle
inResources
并基于它创建一个新的。不过,我不想那样做。我们可能不知道Style
应用了哪个,或者可能无法为 sub- 设置名称Style
。
可能吗?
wpf - 使用样式触发器在 DataTemplate 中切换两个不同的元素
我在 ViewModel 中有一个对象,其属性由数据模板显示。屏幕上还有一个按钮可以切换IsEditing
ViewModel 中的标志,这应该使对象属性可编辑,如下所示:
- 名称应从 TextBlock 更改为 TextBox;
- 颜色应该从彩色矩形变为带有颜色选项的 ComboBox;
- 类别应从 TextBlock 更改为 ComboBox;
我知道如何使用两个完全独立的 DataTemplate 来实现这一点,使用 Style 和 DataTrigger 在它们之间切换:
目前DisplayTemplate
是这样的:
问题是:使用两个独立但相似的模板意味着布局的重复,因为只有一些字段会改变,但整体结构是一样的。
我想的另一个选择是使用在样式中定义的单个模板,并使用触发器单独更改字段,但我不知道该怎么做,或者即使有可能。
c# - 应用程序的不同部分的样式不同
我们有一个由多个不同页面组成的可扩展应用程序。这些页面没有统一的设计——我们公司将应用程序的一部分授权给其他公司,这些公司可能希望拥有自己的设计。
因此,我们有一个主窗口和页面A,采用A公司的设计样式,另一个页面A,但采用公司B的设计样式。“页面A”是WPF用户控件,我们没有想要复制代码,而只是交换视觉外观。
我评估了不同的可能性:
主题:据我了解,这是全球性的。因此,我们不能为第一个页面 A 设置一个主题,而为第二个页面 A 设置另一个主题。
样式:这很好,因为我们可以在运行时分配它。这里的问题是我们的页面不是平面的。它们具有深度嵌套的子控件,因此我们需要递归地为每个子控件分配正确的公司特定样式。
有人有其他想法吗?风格方法是唯一的出路吗?
c# - WPF 样式触发器不适用于自定义枚举
您好我想知道为什么我的样式触发器不工作取决于自定义枚举?代码如下:
我尝试了 DataTrigger 但仍然无法正常工作。有任何想法吗?