AdornerDecorator的CacheMode绑定和windows锁屏导致TableControl锁死问题

有个wpf项目,从.net framework 4.0刚出来就在用,现在慢慢的系统从win xp到win10了。

升级到.net 8后发现一个怪异的现象,就是当windows按Win+L锁屏后,某个TableControl里面的TableItem无法激活了,就和Disable了一样的现象。

经过各种尝试,最终逐步删代码,发现一个子控件里面的依据代码删了就好了。

控件的 ControlResource/Style/Setter/Template[Value]里面有个自己父类型的ControlTemplate,/ViewBox/Grid/AdornerDecorator,

代码如下:

<AdornerDecorator CacheMode="{Binding RelativeSource={RelativeSource Self}, Path=(wpf:ShadowAssist.CacheMode)}">
<Ellipse >
</Ellipse>
</AdornerDecorator>

把它的CacheMode删了就好。

 

真是神奇。

posted @ 2024-08-29 13:54  william1994  阅读(25)  评论(0)    收藏  举报