0

我有 2 个问题。

第一个。我正在将 Silverlight 用于 Windows Embedded Compact 7,但我遇到了一些绑定问题。

我有这样的模板

<Style TargetType="RadioButton" x:Key="VoltageTab">
    <Setter Property="Width" Value="95"/>
    <Setter Property="Height" Value="61"/>
    <Setter Property="Margin" Value="193,0,192,3"/>
    <Setter Property="HorizontalAlignment" Value="Left"/>
    <Setter Property="VerticalAlignment" Value="Bottom"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="RadioButton">
                    <Grid Background="#00000000">
                            <Image x:Name="UnCheckedimg" Source="12.png"/>
                            <Image x:Name="Checkedimg" Visibility="Collapsed" Source="11.png"/>
                            <TextBlock x:Name="ModeName" FontSize="20" FontFamily="Alternate_Gothic_No.ttf#Alternate-Gothic-No3" Text="VOLTAGE" Foreground="#D25A32" VerticalAlignment="Top" HorizontalAlignment="Center" Margin="0,4,0,0" />
                            <TextBlock  x:Name="ModeValue" FontSize="20" FontFamily="Alternate_Gothic_No.ttf#Alternate-Gothic-No3" Text="{TemplateBinding Content}" HorizontalAlignment="Center"  VerticalAlignment="Bottom" Margin="0,0,0,2"/>
                            <TextBlock x:Name="ModeNameChecked" Visibility="Collapsed" FontSize="34" FontFamily="Alternate_Gothic_No.ttf#Alternate-Gothic-No3" Text="VOLTAGE" Foreground="Black" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,0,0,0" />
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

我使用 TemplateBinding 来绑定 ModeValue 文本块,但我需要另一个绑定来绑定 ModeName。有人可以指出我该怎么做吗?

  1. 我有另一种风格

编辑:第 2 种风格贴在下面,因为编辑没有让我把它贴在这里

如果我只将文本放入内容中,它可以正常工作,但我希望你运行对象,以便我可以格式化按钮内的文本。

这可能吗?如果没有,还有其他方法可以实现吗?

请记住,我使用 Silverlight For Windows Embedded。

最好的问候,卢卡


 <Style x:Key="FunctionSelectButton" TargetType="RadioButton">
    <Setter Property="Width" Value="154"/>
    <Setter Property="Height" Value="61"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="RadioButton">
                    <Grid Background="#00000000">
                        <Image x:Name="NormalImg" Source="mode_unpressed.png" Stretch="None"/>
                        <TextBlock x:Name="NormalText" Foreground="#D25A32" FontSize="26" FontFamily="Alternate_Gothic_No.ttf#Alternate-Gothic-No3" HorizontalAlignment="Center" Text="{TemplateBinding Content}" VerticalAlignment="Center" Margin="0,0,0,0"></TextBlock>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

更容易表示的图像->图片

4

1 回答 1

1

要回答您的第一个问题,请看这里

不过,您的第二个问题,我不确定我是否完全理解问题是什么,但我认为您正在寻找的是将其设置为带有 contenttemplate 的 ContentPresenter,而不是像;

<Style x:Key="FunctionSelectButton" TargetType="RadioButton">
    <Setter Property="Width" Value="154"/>
    <Setter Property="Height" Value="61"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="RadioButton">
                    <Grid>
                        <Image x:Name="NormalImg" Source="mode_unpressed.png" Stretch="None"/>
                        <ContentPresenter x:Name="contentPresenter"
                                          Margin="{TemplateBinding Padding}"
                                          HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                          VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                          Content="{TemplateBinding Content}"
                                          ContentTemplate="{TemplateBinding ContentTemplate}" />

<!--
<TextBlock x:Name="NormalText" Foreground="#D25A32" FontSize="26" FontFamily="Alternate_Gothic_No.ttf#Alternate-Gothic-No3" HorizontalAlignment="Center" Text="{TemplateBinding Content}" VerticalAlignment="Center" Margin="0,0,0,0"></TextBlock>
-->
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

<Button Content="{Binding RPE-2WIRE}" Style="{StaticResource FunctionSelectButton}" FontFamily="Alternate_Gothic_No.ttf#Alternate-Gothic-No3" Foreground="#D25A32" FontSize="26" />

至少我认为你是这么说的:)

于 2012-08-23T19:52:27.330 回答