问题标签 [valueconverter]
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 - WPF 绑定到样式中另一个属性的绑定
我不确定提出这个问题的最佳方式(对不起,问题标题模棱两可),但基本上我想使用从数据上下文中传递的属性值转换器在 TextBox 上设置 MaxLength 属性,并将传入属性上的属性作为转换器参数。我想以一种风格来做这一切,而不是在逐个控制的基础上。这是以非样式方式执行此操作的示例:
(如果您想知道,ThirdPropertyName 表示 MyPropertyName 类型上的一个属性,该属性具有类似 [StringMaxLength(15)] 的属性,我可以在值转换器中获取并返回该属性。)此外,是否有有什么方法可以传入 MyPropertyName 的类型而不是实例?我只需要类型来进行 StringMaxLength 属性查找。
无论如何,我怎么能以一种风格去做这样的事情呢?我已经做到了:
但这会将整个数据上下文传递给值转换器,而不是 MyPropertyName 对象,而且我真的不知道是否可以让它解析绑定的 MyPropertyName.TheirPropertyName 部分以在绑定的 ConverterParameter 属性上传递 TheyPropertyName .
任何指导将不胜感激!
wpf - 值转换器是否在 WPF 中按绑定实例化?
是否为使用特定值转换器类的每个绑定实例化了一个单独的 WPF 值转换器对象?
我正在尝试创建一个双向位到布尔值转换器。我希望能够将bool
属性(例如IsChecked
)绑定到值类型(例如 a ushort
)中的位。我正在使用转换器的parameter
参数来指定位。实现 ConvertBack() 方法很容易,但 Convert() 有点棘手。
在 Convert() 中,我需要知道整体的值是什么,ushort
这样我就可以只切换我感兴趣的单个位。我想在我的值转换器类中使用一个成员变量来临时存储它,每当 ConvertBack()被调用,从而导致上面的问题:每个绑定是否都有自己的值转换器实例?
wpf - 拥有静态 wpf 值转换器是一个坏主意吗?
而不是在资源中声明转换器,我可以做类似的事情
其中 Instance 仅被实例化一次(懒惰的 sinlgeton)
但是我担心在处理视图时保留对静态变量的引用可能会妨碍垃圾收集(我正在使用 PRISM)。你怎么看?
wpf - 在 WPF 中显示自定义值类型而不使用值转换器
我正在开发的系统在内部使用了大量的自定义值类型。我正在使用 WPF 开发原型 UI。WPF 不知道如何显示自定义类型。我知道我可以编写一个自定义 ValueConverter 来执行此操作,但我真的不想每次绑定到我的 XAML 中的类时都必须指定转换器的使用。
是否有我可以在自定义值类型中实现的接口,让 WPF 知道如何在本机显示它?
或者,有没有一种方法可以指定一个应用程序范围的值转换器,该转换器将应用于我们自定义类型的任何实例,而不必在每个绑定表达式中指定 ValueConveter?
.net - 何时在 mvvm 应用程序中使用值转换器?
如果一个人正在使用 MVVM 设计模式实现 WPF 应用程序,是否存在使用值转换器的情况?在我看来,值转换器所做的与视图模型所做的完全相同,即为视图准备数据。
那么,价值转换器有什么好的用途吗?
最好的问候
奥利弗·哈纳皮
wpf - WPF值转换器在自定义事件中触发重新转换?
有没有办法强制 wpf 在特定事件上再次运行值转换器?
c# - IDataErrorInfo 与 ValueConverter
我以某种方式做错了,但我无法弄清楚:
我有一个这样的模型:
像这样的 ValueConverter:
像这样的视图:
如果有人将“1.1.1950”之类的有效日期修改为“1.1.abc”之类的无效日期,则该值不会传递给 Person 并且不会使其无效。但是显示了生日文本框周围的红色边框。如何保留无效文本(由用户修改)并为 IDataErrorInfo 注册错误?
wpf - CultureInfo on a IValueConverter implementation
When a ValueConverter is used as part of a binding, one of the parameters to the Convert
function is a System.Globalization.CultureInfo
object.
Can anyone tell me where this culture object gets its info from?
I have some code that formats a date based on that culture. When i access my silverlight control which is hosted on my machine, it formats the date correctly (using the d/MM/yyyy format, which is set as the short date format on my machine). When i access the same control hosted on a different server (from my client machine), the date is being formatted as MM/dd/yyyy hh:mm:ss - which is totally wrong. Coincidentally the regional settings on the server are set to the same as my client machine.
This is the code for my value converter:
basically, a specific format can be specified as the converter parameter, but if it isn't then the short date pattern of the culture object is used.
wpf - 使用值转换器生成对 GUI 友好的字符串是对值转换器的滥用吗?
目前,我使用值转换器为 GUI 生成用户友好的字符串。例如,我有一个窗口,在状态栏中显示可用实体的数量。Viewmodel 仅具有调用代码可以设置的 int 依赖属性,然后在显示实体数量的文本框的绑定上,我指定了 int 依赖属性和将“x”更改为“x 可用实体”的值转换器”。
我的代码开始充斥着这些转换器,并且我的 XAML 中有大量烦人的资源声明,但我喜欢它们,因为所有特定于 GUI 的字符串格式都在转换器中被隔离并且调用代码没有不必担心。但是,我想知道这是否不是价值转换器的目的。
.net - xaml中的wpf转换器
我知道有几种方法可以在 xaml 中使用值转换器,例如使用 StaticResource 从资源中获取转换器或使用 Static 从静态实例中获取。我的问题是,无论出于何种原因,我在后面的代码中创建了一个转换器实例,并且可以通过非静态属性访问,我如何在 xaml 中使用这个转换器实例进行绑定?
谢谢,
问