当前位置:  开发笔记 > 编程语言 > 正文

在XAML中使用在Silverlight中的代码中创建的静态对象

如何解决《在XAML中使用在Silverlight中的代码中创建的静态对象》经验,为你挑选了2个好方法。

我无法在Silverlight中使用它,所以我创建了两个测试项目.一个简单的WPF项目和一个简单的Silverlight项目,它们只做一件事:在代码中设置一个公共静态只读变量,并在一个完全裸的XAML中使用它.在WPF中,工作顺利.在Silverlight中,我收到以下编译器警告和运行时错误:

警告2 XML名称空间" http://schemas.microsoft.com/winfx/2006/xaml " 中不存在"静态"标记...

属性Text的属性值{x:Static SilverlightApplication3:Page.Test}无效.[线路:7位置:25]

我假设Silverlight 2不支持这个,或者我只是错过了一些非常简单的东西?这是两者的完整代码,以防它是后者:

public partial class Window1 : Window
{
    public static readonly string Test = "test";
    public Window1()
    {
        InitializeComponent();
    }
}

    
    
        
    

这是SL版本:

public partial class Page : UserControl
    {
        public static readonly string Test = "test";
        public Page()
        {
            InitializeComponent();
        }
    }


    
        
    

user76035.. 6

不幸的是,Silverlight在功能方面有很多限制,你刚刚找到其中一个.SL2不支持StaticMarkupExpression.您也无法自己定义它.

例如来自ms的家伙:http://blogs.msdn.com/edmaia/archive/2008/11/23/animating-objects-visibility-in-silverlight.aspx

诀窍可能是使用像这样的对象

class Helper{
    public string Value {get{return Page.Test;}} 

// implement INotifyPropertyChange if you want updates
}

然后


     




Andy.. 5

不幸的是,看起来Silverlight不支持绑定到静态属性:什么是{x:Static sdfsdf}等价物?



1> user76035..:

不幸的是,Silverlight在功能方面有很多限制,你刚刚找到其中一个.SL2不支持StaticMarkupExpression.您也无法自己定义它.

例如来自ms的家伙:http://blogs.msdn.com/edmaia/archive/2008/11/23/animating-objects-visibility-in-silverlight.aspx

诀窍可能是使用像这样的对象

class Helper{
    public string Value {get{return Page.Test;}} 

// implement INotifyPropertyChange if you want updates
}

然后


     





2> Andy..:

不幸的是,看起来Silverlight不支持绑定到静态属性:什么是{x:Static sdfsdf}等价物?


太糟糕了.谢谢你的链接.当我搜索时,我没有发现任何确定的东西,但是在你链接的帖子中回答的那个人是SL的权威
WhyTF不支持他们吗?!
推荐阅读
吻过彩虹的脸_378
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有