如何将XAML中的资源字符串绑定到同一控件中的多个属性?

时间:2009-01-14 11:35:37

标签: silverlight xaml resources

是否可以将其他资源字符串绑定到控件中的另一个属性。我已经有一个属性绑定到资源但还需要另一个属性。我无法看到这样做的方法,因为我需要一个额外的DataContext,但显然只能有一个。

我需要绑定的附加属性是超链接控件中的内容。

xaml文件如下: -

<UserControl x:Class="SilverlightApplication1.Page"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:mystuff="clr-namespace:my.assembly.name;assembly=my.assembly.name"
    Width="100" Height="100">

    <UserControl.Resources>
        <mystuff:TxtResConv x:Key="TxtResConv" />
        <mystuff:TxtResPar x:Key="LabelTitle" ResourceUri="LabelTitle" DefaultValue="default label title" />
        <mystuff:TxtResPar x:Key="LinkURL" ResourceUri="LinkURL"  DefaultValue="default label title" />
    </UserControl.Resources>

   <Grid x:Name="LayoutRoot" Background="White">
            <HyperlinkButton DataContext="{StaticResource LinkURL}" x:Name="HyperLink1" Content="NEED TO ADD RESOURCE STRING LABELTITLE HERE !!" NavigateUri="{Binding Mode=OneWay,Converter={StaticResource TxtResConv}}"></HyperlinkButton>             
   </Grid>
</UserControl>

提前致谢。

1 个答案:

答案 0 :(得分:1)

使用绑定语法绑定到Content属性的方式与绑定到NavigateUri属性的方式相同。如果它来自与LinkUri不同的源,那么您在绑定语法 Source 属性中指定它:

Content="{Binding Source={StaticResource LabelTitle}, 
                  Converter={StaticResource TxtResConv}}"