【发布时间】:2013-10-03 07:54:12
【问题描述】:
由于要求,我需要一个组合框,其工作方式如下:
它使用: - 在查看模式下一组用于前/背景的颜色 - 在编辑模式下的第二组前/背景颜色 - 选定模式的另一组(当光标在组合框中时) - 另一组禁用模式
用户将永远无法编辑内容,只需单击向下箭头并从列表中选择。
除了颜色之外,我的组合框都在工作。与其他控件不同,简单地尝试执行以下操作(编辑模式的触发器)是行不通的:
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsFocused"
Value="false" />
<Condition Property="wpfMisc:myCtrl.viewMode"
Value="false" />
<Condition Property="IsEnabled"
Value="true" />
</MultiTrigger.Conditions>
<Setter Property="BorderBrush"
Value="{DynamicResource controls-editableBorderBrush}" />
<Setter Property="Background"
Value="{DynamicResource controls-editableBackgroundBrush}" />
<Setter Property="Foreground"
Value="{DynamicResource controls-editableForegroundBrush}" />
</MultiTrigger>
我需要在我的样式中设置什么,以便我可以更改显示的 SelectedItem 的前/后颜色 - 即使上述工作有效?
我很好奇是否有人能告诉我为什么这样的控件不使用与其他数据输入控件类似的界面(这不就是多态性的全部概念吗?)这没什么大不了的,只是好奇,仅此而已。
谢谢!
【问题讨论】:
-
您是否尝试将#eeeeee(或其他)放入值中?只是为了看看动态资源是否运作良好
-
老兄...查找“多态性”...这与您所说的完全无关...作为开发人员,您真的应该知道什么是的。
-
是的,我尝试使用标准颜色(红色、蓝色等)没有帮助。
-
Sheridan - 请阅读:en.wikipedia.org/wiki/Polymorphism_(computer_science) - 但这里是开场白:“为不同类型的实体提供单一接口。”我相信这就是我要问的......
-
老兄,如果这就是你认为多态的意思,那你就有问题了。它涉及具有多个具有相同名称但输入参数不同的方法的能力,以及扩展类和基类之间的公共接口。维基百科不是学习编程的好地方。不过,别生气,我会尽力帮忙的。