2013-11-28 3 views
0

У меня есть приложение WPF. Я пытаюсь настроить кнопку. Который я частично достиг, однако, я не могу показать фон моей кнопки RadialGradientBrush. Я действительно не вижу, что я делаю неправильно. Я также не хочу никакой рамки для кнопки.Шаблон стиля WPF для кнопки

Ниже приведен код. Где у меня есть значение для фона свойства, он говорит, что токен недействителен?

<Application.Resources> 
<RadialGradientBrush x:Key="brushSecurityButtRadial"> 
     <GradientStop Color="White" Offset="0"/> 
     <GradientStop Color="Blue" Offset="0.3"/> 
    </RadialGradientBrush> 

<!-- style for button --> 
    <Style x:Key="buttSecurity" TargetType="Button"> 
     <Setter Property="Margin" Value="1,2,1,2"/> 
     <Setter Property="HorizontalAlignment" Value="Center"/> 
     <Setter Property="Background" Value="brushSecurityButtRadial"/> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type Button}">      
        <Grid> 
         <Grid.RowDefinitions> 
          <RowDefinition/> 
          <RowDefinition Height="2*"/> 
         </Grid.RowDefinitions> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition/> 
          <ColumnDefinition/> 
         </Grid.ColumnDefinitions> 
         <TextBlock Grid.Row="0" Grid.ColumnSpan="2" Text="GBP/USD" Style="{StaticResource txtSecurity}"/> 
         <Image Grid.Row="1" Grid.Column="0" Source="C:\Users\Mark\Documents\Visual Studio 2012\Country Flags\ICO\GBP.ico"/> 
         <Image Grid.Row="1" Grid.Column="1" Source="C:\Users\Mark\Documents\Visual Studio 2012\Country Flags\ICO\USD.ico"/> 
        </Grid>    
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

</Application.Resources> 
+0

у вас есть vs2012? использовать смесь – makc

+0

-1. Вы не должны изменять свой вопрос после того, как пользователи предоставили вам ответ. У вас есть два пользователя, которые правильно ответили на ваш первоначальный вопрос, но вы не отметили ни одно из них как правильное. Если пользователи видят, что вы это делаете, вы можете обнаружить, что они избегут отвечать на ваши вопросы в будущем. Фактически, вы даже не изменили текст в своем вопросе (не делайте этого сейчас), поэтому ваш вопрос задает одну вещь, и ваш принятый ответ даже не пытается ответить на этот вопрос ... если бы я был вами, я 'd принять один из оригинальных ответов, который фактически отвечает на вопрос. – Sheridan

ответ

0

вы не можете установить фон, потому что у вас есть ошибка привязки, которые вы должны увидеть в окне вывода или при использовании Snoop. вы также можете использовать Blend, чтобы установить GradientBrush автоматически

<Setter Property="Background" Value="{StaticResource brushSecurityButtRadial}"/> 
+0

ах, это глупо от меня. Теперь он работает, но цвет кнопки не синий или белый? – mHelpMe

1

попробовать

Value="{StaticResource brushSecurityButtRadial}" 
+0

Ах, это было глупо от меня. Теперь он работает, но на кнопке нет ни синего, ни белого? – mHelpMe

1

Шаблон вы даете кнопки скрывает свой фон.

Положите фон в сетку в шаблон.

Смежные вопросы