以编程方式使用 C# 更改网格面板边框颜色 - WPF

Posted

技术标签:

【中文标题】以编程方式使用 C# 更改网格面板边框颜色 - WPF【英文标题】:Change Grid Panel Border color Using C# programatically- 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>

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

谢谢!

【问题讨论】:

【参考方案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);

【讨论】:

以上是关于以编程方式使用 C# 更改网格面板边框颜色 - WPF的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式更改背景颜色而不影响边框?

如何以编程方式更改 WPF 中的数据网格行颜色?

以编程方式在电子表格中设置边框颜色和样式

以编程方式将渐变边框颜色应用于 UIButton

更改网格 extjs3 中的记录边框颜色

在 Delphi 中,如何更改 TDBGrid 中网格线的颜色?