将 UriMapper.Uri 绑定到 silverlight 4 中的静态资源

发布于 2024-11-02 21:27:46 字数 800 浏览 3 评论 0原文

是否可以将下面代码中的uri绑定到静态资源?我在资源文件中定义了 url,并希望绑定到该文件,而不是在此处对值进行硬编码。

<navcore:UriMapper x:Key="uriMapper" >
            <navcore:UriMapping Uri="Home" MappedUri="/Home.xaml" />
</navcore:UriMapper>

我尝试声明一个静态资源并绑定到它,如下例所示,但它失败了

<Application.Resources>

        <local:URLContainer x:Key="URLContainer" />

        <navcore:UriMapper x:Key="uriMapper" >
            <navcore:UriMapping Uri="Home" MappedUri="{Binding Source={StaticResource URLContainer}, Path=HomeUrl}" />
        </navcore:UriMapper>

</Application.Resources>

当我启用 CLR 异常时得到的错误是:

对象类型 “System.Windows.Data.Binding”不能 转换为“System.Uri”类型。

我已将资源文件构造函数公开,并将访问级别也设置为公开。

Is it possible to bind the uri in the code below to a static resource? I have the urls defined in a resource file and wanted to bind to that rather than hardcoding the values here.

<navcore:UriMapper x:Key="uriMapper" >
            <navcore:UriMapping Uri="Home" MappedUri="/Home.xaml" />
</navcore:UriMapper>

I tried to declare a static resource and bind to it like in the example below but it failed

<Application.Resources>

        <local:URLContainer x:Key="URLContainer" />

        <navcore:UriMapper x:Key="uriMapper" >
            <navcore:UriMapping Uri="Home" MappedUri="{Binding Source={StaticResource URLContainer}, Path=HomeUrl}" />
        </navcore:UriMapper>

</Application.Resources>

Error that i get when i enable CLR exceptions is:

Object of type
'System.Windows.Data.Binding' cannot
be converted to type 'System.Uri'.

I have made the resource file constructor public and set the access level to public too.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

话少情深 2024-11-09 21:27:46

MappedUri 不是 Dependency Property,因此无法通过 DataBinding 设置它。

MappedUri is not a Dependency Property, thus it can't be set through DataBinding.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文