基于对象中枚举字段的 xaml 样式
我有一个像这样的对象集合:
public enum ObjectType
{
Type1,
Type2
}
public class MyObject
{
...
public ObjectType ObjType;
public string Header;
...
}
我从示例应用程序获得的样式之一是:
<Style TargetType="{x:Type inf:MyObject}">
<Setter Property="Header" Value="{Binding Header}" />
</Style>
如何创建受 ObjectType 枚举字段约束的单独样式? IE 对于 ObjType 设置为 Type1 和 Type2 的 MyObject 有单独的样式吗?
我的字段确实实现了 INotifyPropertyChanged,这只是一些简短的示例代码
谢谢
I have a collection of objects like so:
public enum ObjectType
{
Type1,
Type2
}
public class MyObject
{
...
public ObjectType ObjType;
public string Header;
...
}
One of the styles I have from an example app is:
<Style TargetType="{x:Type inf:MyObject}">
<Setter Property="Header" Value="{Binding Header}" />
</Style>
How can I create separate styles constrained on the ObjectType enum field? I.E. have a separate style for a MyObject with an ObjType set to Type1 vs Type2?
My fields do implement INotifyPropertyChanged, this is just some brief sample code
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我可能会通过触发器来做到这一点:
分离可能是不可能的。
好吧,您可以创建单独的样式,但您需要使用 ResourceKey 手动应用它们:
I'd probably do this via triggers:
Separation is probably not possible.
Well, you can create separate styles but you would need to apply them manually using the ResourceKey:
尝试将样式属性绑定到枚举属性,
使用值转换器。
Try binding style property to the enum property,
using a value converter.