2015-10-29 197 views
1

我想为示例中的doubleupdown按钮制作自定义样式。 例如:enter image description here 我有什么enter image description here 主要问题是,当我点击它时,<RepeatButton x:Name="PART_IncreaseButton" Grid.Row="0" IsTabStop="{TemplateBinding IsTabStop}" Style="{StaticResource CustomRepeatButtonStyle}"/>没有响应为什么?我的DoubleUpDown自定义样式wpf

XAML代码发飙:

<Window.Resources> 
    <Style x:Key="CustomRepeatButtonStyle" TargetType="{x:Type RepeatButton}"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type RepeatButton}"> 
        <Grid x:Name="customgrid" Background="White"> 
         <Polygon x:Name="custompolygon" Points="1,11 6,1 11,11" Fill="SkyBlue" VerticalAlignment="Center" HorizontalAlignment="Center"> 
         </Polygon> 
        </Grid> 
        <ControlTemplate.Triggers> 
         <Trigger Property="IsMouseOver" Value="true"> 
          <Setter TargetName="custompolygon" Property="Fill" Value="black"/> 
         </Trigger> 
        </ControlTemplate.Triggers> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
    <Style x:Key="CustomDoubleUpDownStyle" TargetType="{x:Type xctk:DoubleUpDown}"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type xctk:DoubleUpDown}"> 
        <Border BorderThickness="1" BorderBrush="Purple"> 
        <Grid> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition Width="0.3*"/> 
          <ColumnDefinition /> 
         </Grid.ColumnDefinitions> 
          <Grid Grid.Column="0"> 
           <Grid.RowDefinitions> 
            <RowDefinition/> 
            <RowDefinition/> 
           </Grid.RowDefinitions> 
           <RepeatButton x:Name="PART_IncreaseButton" Grid.Row="0" IsTabStop="{TemplateBinding IsTabStop}" Style="{StaticResource CustomRepeatButtonStyle}"/> 
           <RepeatButton x:Name="PART_DecreaseButton" Grid.Row="1" IsTabStop="{TemplateBinding IsTabStop}"/> 
          </Grid> 
          <ContentPresenter Grid.Column="1" Content="{TemplateBinding Property=Value}" HorizontalAlignment="Center" VerticalAlignment="Center"/> 
        </Grid> 
        </Border> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</Window.Resources> 
<Grid> 
    <xctk:DoubleUpDown Width="180" Height="70" Style="{StaticResource CustomDoubleUpDownStyle}" Value="20"/> 
</Grid> 
+0

你是什么意思的“...没有回应...”? – blueprint

+0

当我点击撤销按钮值不要更改的时候 – A191919

回答

0

在XAML中没有绑定到click事件(或任何其他活动)的功能。换句话说:从程序的角度来看,当你点击任何一个按钮时,什么都不做。这是你的问题吗?

在这种情况下,添加事件处理程序并相应地修改模型中的计数器。

+0

但是“xctk:DoubleUpDown”已经在toolkit库中实现了点击事件。我认为它应该通过'x:Name ='PART_IncreaseButton''' – A191919

+0

这可能是事实,如果使用反射,但起初'x:Name'只是一个名字。 – blueprint