c# - 在'System.Windows.StaticResourceExtension 上提供值(value)

标签 c# wpf xaml

XAML 页面中,我尝试使用 IValueConverter,它抛出错误。

  • IValueConverter 在另一个程序集中,我添加了一个引用
  • 没有设计时错误
  • 我已经为 StaticResource 分配了 ResourceKey

在我的页面顶部,我有这个:

xmlns:converters="clr-namespace:Converters;assembly=Converters"

<Page.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Styles/DialogStyles.xaml" />
        </ResourceDictionary.MergedDictionaries>
        <converters:NoWhiteSpaceConverter x:Key="NoWhiteSpaceConverter" />
    </ResourceDictionary>
</Page.Resources>

然后我稍后尝试像这样使用它:

<TextBox Text="{Binding SomeText, Converter={StaticResource NoWhiteSpaceConverter}}" />

谁能看出是什么问题?

最佳答案

确保资源在使用前定义(按 Xaml 解析顺序)。最简单的方法是将其放入 App.xaml

另请参阅此处了解类似问题:https://paulkiddie.com/the-importance-of-the-position-of-window-resources-element-in-wpf-xaml-markup/

关于c# - 在'System.Windows.StaticResourceExtension 上提供值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13861866/

相关文章:

c# - 单击图片框的不同部分 (c#)

c# - 使用 MVVm 浏览 TabItem

wpf - 使用 MVVM 和 WPF 创建导航的最佳架构

c# - 推荐XNA教程开始学习3D(第一次)

c# - 关闭连接时出现“Only assignment, call increment…”错误

wpf - 有没有办法获取窗口的所有 BindingExpression 对象?

c# - 如何以编程方式将 DataGrid 列设置为 DatePicker 输入

c# - 如何自动应用 generic.xaml 中的数据模板?

c# - "value cannot be null. parameter name container"xaml

c# - 创建 Silverlight 覆盖用户控件