问题标签 [dynamicresource]

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 投票
1 回答
4280 浏览

wpf - SelectedColor 绑定不会从 ColorPicker 更新到 Model

我有一个 WPF 应用程序,我需要允许更改外观(主要是背景和前景)。所以我将它们绑定到在App.resources.

我还决定在“设置”窗口中使用ColorPickerfrom wpftoolkit(v2.5.0)

使用 colorPicker 设置窗口

简化示例

应用程序.xaml

带有颜色选择器的MainWindow.xaml

主窗口.cs

刷子模型

问题是当我选择颜色时,AppBrush 中的BREAKPOINT没有被命中。BrushColor必然ColorPicker SelectedColor。如果我改变BrushColorColorPicker就会更新。

是 ColorPicker 错误还是我的?选择更改后如何立即更新应用画笔?

0 投票
1 回答
339 浏览

c# - 如何在没有 DependencyProperty 设置的情况下通知 DynamicResource 更改(相对于特定 FrameworkElement)?

有一个奇怪的要求。当动态资源相对于 FrameworkElement 发生更改时,我需要得到通知,但我没有该 FrameworkElement 上设置属性。因此,我不能{DynamicResource someKey}在 XAML 中使用,也不能someElement.SetResourceReference()在代码隐藏中使用。

现在获取当前值很容易。您只需调用即可someElement.FindResource("someKey")获得当前值,但这需要轮询。

我考虑创建一个人造绑定源对象,然后我可以绑定到该对象,但问题是它不是可视化树的一部分,因此除非该资源是在应用程序级别定义的,否则您将无法获得它。你也不能把东西塞进视觉树。

我已经看到一个使用可以定义 DependencyProperty 的行为的答案,并且当附加到 FrameworkElement 时,它们确实会像人们所怀疑的那样进行更新,但这需要 XAML,因为我不知道如何调用 FrameworkElement 的 setResourceReference 的等效行为.

所以……想法?

0 投票
1 回答
141 浏览

c# - 行为如何访问关联元素的资源层次结构?

在今晚解决一个围绕动态资源的问题时,我最终得到了一个依赖于Behavior类参与其相关框架元素的资源层次结构的能力的解决方案。例如,考虑以下

TextBlock 将显示来自边框的资源。但是,如果我这样做...

...它从应用程序中找到一个,因为它不是可视树的一部分。

也就是说,如果我改为这样做......

然后像这样将它添加到 TextBlock ...

该行为确实获得了资源的价值,并将动态跟踪它。但是怎么做?

行为不是 FrameworkElement,因此您不能对其调用 SetResourceReference,它也不是可视树的一部分,因此即使您可以调用 SetResourceReference,它仍然无法找到 FrameworkElement 本地的资源。然而,这正是 Behavior 所做的。如何?

换句话说,如果我们想编写我们自己的类来展示同样的行为(不是双关语),如何将自己插入到可视化树的资源层次结构中?

0 投票
1 回答
5285 浏览

c# - 如何绑定到 DynamicResource 以便可以使用 Converter 或 StringFormat 等?(修订版 4)

注意:这是对早期设计的修订版,其局限性在于无法在样式中使用,从而在很大程度上否定了其有效性。但是,这个新版本现在可以与样式一起使用,基本上让您可以在任何可以使用绑定或动态资源的地方使用它,并获得预期的结果,使其更加有用。

从技术上讲,这不是问题。这是一篇文章,展示了一种我发现可以轻松使用以 aDynamicResource作为源的转换器的方法,但为了遵循 s/o 的最佳实践,我将其作为问答对发布。所以看看我下面的答案,我发现了如何做到这一点。希望能帮助到你!

0 投票
2 回答
1218 浏览

c# - Validation.ErrorTemplate 的 Wpf 动态资源查找

在我的 App.xaml 中,我为 定义了一个资源Validation.ErrorTemplate,它取决于动态BorderBrush资源。我打算BorderBrush在我拥有的每个窗口以及窗口内的不同块中定义唯一的。

而这个来证明我的问题(也有动态画笔资源)

现在我使用这些模板的窗口可以解析普通模板的画笔资源,但不能解析Validation.ErrorTemplate

它看起来如何

我应该怎么做才能在 TextBox 周围获得红色边框?

0 投票
2 回答
153 浏览

c# - 对网格中所有同类元素应用相同的动态样式

我有一个充满标签的网格,它们都使用相同的样式,即 DynamicResource:

有没有办法只为网格中的所有标签设置一次样式?我尝试过这种方式,但BasedOn不适用于DynamicResources.

0 投票
1 回答
2738 浏览

xaml - 对 XAML 中的按钮使用 DynamicResource 样式和 DataTrigger

我正在使用预定义的样式,例如Style="{DynamicResource SquareButtonStyle}"

无法修改,我需要启用/禁用Buttonvia DataTrigger

这似乎是不可能的事?

错误是:属性“样式”设置了多次。

0 投票
1 回答
51 浏览

c# - 显示多行动态资源标签

我希望在 WPF 中添加一个标签,显示来自两个不同 DynamicResources 的字符串。
我希望每个 DynamicResource 都在一个新行上。

我现有的代码是:

我有另一个名为 MyTextLine2 的 DynamicResource 我想显示在 MyTextLine1 下方但在同一个标​​签中。

我怎样才能做到这一点?

我在这里查看了这些示例,但它们没有显示在新行上:如何将多个值绑定到单个 WPF TextBlock?

0 投票
2 回答
1085 浏览

wpf - 在 Style.Resources 中使用 StaticResourceExtension 时出错

我在模板中使用 DynamicResource,并在使用该模板的每个样式中使用 StaticResourceExtensions 作为资源,以便在每个样式中对 DynamicResource 进行不同的评估。

问题是,我收到此错误:

这是我的代码:

0 投票
1 回答
590 浏览

c# - 如果图像(来自动态资源)不可用,则按钮默认内容

在 UserControl 中,我希望按钮显示图像(由动态资源提供)。如果动态资源不可用/由应用程序提供,我希望按钮显示一些默认内容。

我的想法是将默认内容放入位于图像下方的文本块中,只要图像源为空,就将其隐藏(因此它不会发光)。但是,如果解析 DynamicResource 失败,这种情况似乎不起作用。在这种情况下,图像源的状态究竟是什么?

什么是适当的解决方案?

谢谢你的帮助!