2015-07-17 2 views
1

У меня есть сетки панели, и я хочу его цвет границы изменить, когда мы нажимаем на кнопкуИзменение сетки Панель Цвет границы Использование C# programatically- WPF

<Grid Grid.Row="3" Name="LocationLayoutPanel" VerticalAlignment="Top" 
Margin="0,51,0,0" Height="65" ShowGridLines="True"> 

     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*" /> 
      <ColumnDefinition Width="9*" /> 
      <ColumnDefinition Width="2*" /> 
     </Grid.ColumnDefinitions > 

<Border BorderThickness="2,2,2,2" BorderBrush="Red" Grid.ColumnSpan="3" 
    Grid.RowSpan="2"/> 

    <Button Content="change border color" Grid.Row="1" Grid.Column="1" 
    Click="chnageBGCOLOR"></Button> 
</Grid> 

При нажатии на кнопку «изменить цвет границы» ее сетки цвет границы должен быть изменен!

Спасибо!

+0

пансионера <- граница – jcoppens

ответ

1

XAML:

 <Border BorderThickness="2,2,2,2" Grid.ColumnSpan="3" 
    Grid.RowSpan="2"> 
      <Border.Style> 
       <Style TargetType="Border"> 
        <Setter Property="BorderBrush" Value="Red"/> 
        <Style.Triggers> 
         <DataTrigger Binding="{Binding ElementName=Button, Path=IsPressed}" Value="True"> 
          <DataTrigger.EnterActions> 
           <BeginStoryboard> 
            <Storyboard> 
             <ColorAnimation Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" 
                 To="GreenYellow"/> 
            </Storyboard> 
           </BeginStoryboard> 
          </DataTrigger.EnterActions> 
         </DataTrigger> 
        </Style.Triggers> 
       </Style> 
      </Border.Style> 
     </Border> 
     <Button Name="Button" Content="change boarder color" Grid.Row="1" Grid.Column="1"></Button> 

Programically:

Добавить имя на границе и устанавливается следующим образом:

BorderName.BorderBrush = new SolidColorBrush(Colors.GreenYellow); 
Смежные вопросы