silverlight-4.0 – Silverlight 4默认按钮服务

silverlight-4.0 – Silverlight 4默认按钮服务,第1张

概述几个月来,我在SL 3应用程序中成功使用了 David Justices Default Button example.此方法基于附加属性. 升级到SL4后,该方法不再有效,我得到一个XAML异常: Unknown parser error: Scanner 2148474880 有人在SL4中成功使用过这个(或任何其他)默认按钮附加行为吗? 有没有其他方法可以在SL4中使用可用的新类实现默认按钮 几个月来,我在SL 3应用程序中成功使用了 David Justices Default Button example.此方法基于附加属性.

升级到SL4后,该方法不再有效,我得到一个XAML异常:

UnkNown parser error: Scanner 2148474880

有人在SL4中成功使用过这个(或任何其他)默认按钮附加行为吗?

有没有其他方法可以在SL4中使用可用的新类实现默认按钮行为?

谢谢,
标记

解决方法 我通过允许在附加属性中设置自定义密钥(默认为Enter)来扩展DavID的方法:

public static DependencyProperty buttonKeyProperty = DependencyProperty.Registerattached(         "buttonKey",typeof(Key),typeof(Defaults),new PropertyMetadata(Key.Enter,buttonChanged));    public static voID SetbuttonKey(DependencyObject dependencyObj,Key key)    {        dependencyObj.SetValue(buttonKeyProperty,key);    }    public static Key GetbuttonKey(DependencyObject dependencyObj)    {        return (Key)dependencyObj.GetValue(buttonKeyProperty);    }

我修改了原始属性,然后利用了这个属性:

Key key = GetbuttonKey(dependencyObj);    if (button.IsEnabled && keyEvent.Key == key)        ...

所以现在,例如,如果我想要的话,我可以使用Escape作为键(注意我更改了类和属性的命名):

... UI:Defaults.button="{Binding Elementname=mybutton}" UI:Defaults.buttonKey="Escape" ...
总结

以上是内存溢出为你收集整理的silverlight-4.0 – Silverlight 4默认按钮服务全部内容,希望文章能够帮你解决silverlight-4.0 – Silverlight 4默认按钮服务所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1000950.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-21
下一篇2022-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存