1
1
这是设计出来的。如果将可冻结的对象放入样式中,样式将被冻结以允许跨线程访问。但是绑定本质上是一个表达式,这意味着它不能被冻结,因为数据绑定是单线程的。 如果需要这样做,请将触发器放在样式外部的框架元素下,而不是样式中。您可以在网格中执行此操作。触发器部分。这确实有点糟糕,因为您的样式不再完整,您必须复制触发器,但它是WPF中的“按设计”特性。 在msdn社交论坛上的完整答案是 here . |
2
0
您可以创建一个新的Freezable派生类来作为填充程序启动故事板。将该填充程序对象上的属性绑定到情节提要名称。这样,您就不必复制触发器或将它们存储在样式之外。 |
3
0
为了解决这个问题,我创建了一组附加属性,称为故事板帮助器( source code here )我放弃了尝试将它们附加到故事板本身,现在附加到任何(任意)框架元素,以便在故事板完成时在我的ViewModel上调用ICommand,以及绑定到我的ViewModel上的特定事件以启动故事板。第三个附加属性指定了我们要处理的情节提要:
|
Kryptonit364 · 在DataGrid中隐藏调整大小和选择列 2 年前 |
hassan Ma · 从顶部将文本插入WPF文本块 2 年前 |
Arijit · 移动画布内绘制的矩形 2 年前 |
juraj14466 · C#WPF实时图表将点渲染为图像 2 年前 |