0

我正在尝试为按钮设置图像,我的图像中不包含文本,我想手动为该图像设置文本,我尝试了这种方式按钮与图像的按钮内容,但我不知道如何设置文本它,我在 Visual Studio 2012 for windows mobile 7 中工作

4

2 回答 2

0
<Button x:Name="ButtonName" Height="Auto" Width="Auto">
    <StackPanel>
          <Image Source=image.JPG" Stretch="Fill" Height="Auto" Width="Auto" />
          <TextBlock Text="picture Button" TextAlignment="Center" />
    </StackPanel>
</Button>

事情是不要设置按钮的内容属性。还要给按钮适当的大小,否则图像控件会使其过大

将您的控件放在可以容纳多个孩子而不是按钮支持的只有一个孩子的堆栈面板中,您可以更轻松地控制大小。


根据您提供的图像,这是我的代码。此外,您应该将该图片链接放在您的问题中

<Button  Content="Text" Height="Auto" Width="Auto" BorderThickness="0">
     <Button.Background>
          <LinearGradientBrush StartPoint="0 0" EndPoint="0 1">
               <LinearGradientBrush.GradientStops>
                   <GradientStopCollection>
                       <GradientStop Offset="0" Color="#FF03CCF0" />
                       <GradientStop Offset="1" Color="#FF0182C2" />
                   </GradientStopCollection>
               </LinearGradientBrush.GradientStops>
           </LinearGradientBrush>
      </Button.Background>
  </Button>

根据需要更改按钮大小。此外,您可能需要使用 VisualStateManager 更改其他视觉状态的背景,但结果会更清晰。也有非常肮脏的把戏。我没有发布它的代码。使用画布作为内容,设置它的背景,然后在里面插入一个文本块。我不知道这是否可行,但无论如何我都不会这样做。推荐使用 VisualStateManager。

于 2012-11-17T11:02:55.127 回答
0

将 Image 用作 Button 的最简洁方法是设置 style 属性。

<Style x:Key="CustomButton" TargetType="Button">
    <Setter Property="Template" >
        <Setter.Value >
            <ControlTemplate>
                <Image Source="Images/Sample.jpg" />
            </ControlTemplate >
        </Setter.Value >
    </Setter >

通过定义一个新块在您的页面中设置此代码,<Grid.Resources></Grid.Resources>或者您可以StandardStyles.xaml在定义新 Button 时通用地执行此操作,将BasedOn属性设置为您在样式中定义的 Key 值。

于 2012-11-17T18:06:57.677 回答