加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 附加属性为XAML元素

发布时间:2020-12-15 06:47:58 所属栏目:百科 来源:网络整理
导读:我有一类附加属性: public static class XamlProps{ #region Attached Properties private static readonly DependencyProperty FooProperty = DependencyProperty.RegisterAttached( "Foo",typeof(string),typeof(XamlProps),null); public static void Se
我有一类附加属性:
public static class XamlProps
{
    #region Attached Properties

    private static readonly DependencyProperty FooProperty = DependencyProperty.RegisterAttached(
        "Foo",typeof(string),typeof(XamlProps),null);

    public static void SetFoo(DependencyObject obj,string action)
    {
        obj.SetValue(FooProperty,action);
    }
}

我在XAML中使用这些属性:

<Border me:XamlProps.Foo="Foo to the Bar">

但现在我想在这个属性中有一个更大的值,所以我想用它作为一个元素:

<Border>
    <me:XamlProps.Foo>Foo to the Bar</me:XamlProps.Foo>
</Border>

但现在Silverlight不再调用SetFoo()了.我该如何让这个工作?

在Windows Phone 7上,如果重要.

解决方法

如果您使用该语法,则需要指定类型:
<Border>
    <me:XamlProps.Foo>
        <sys:String>Foo to the Bar</sys:String>
    </me:XamlProps.Foo>
</Border>

sys命名空间映射到System的位置.你还需要定义GetFoo …

可能是一个复制粘贴打字错误,但在注册

typeof(XamlActions)

应该

typeof(XamlProps)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读