【问题标题】:Change Grid Panel Border color Using C# programatically- WPF以编程方式使用 C# 更改网格面板边框颜色 - WPF
【发布时间】:2015-07-17 15:25:41
【问题描述】:

我有网格面板,当我们点击按钮时,我想改变它的边框颜色

<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>

当我点击“更改边框颜色”按钮时,它的网格边框颜色应该会改变!

谢谢!

【问题讨论】:

    标签: wpf xaml wpf-controls gridpanel


    【解决方案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>
    

    以编程方式:

    将Name添加到Border并设置如下:

    BorderName.BorderBrush = new SolidColorBrush(Colors.GreenYellow);
    

    【讨论】:

      猜你喜欢
      • 2011-06-29
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-04
      相关资源
      最近更新 更多