【问题标题】:Border element with a background hides the other element under it. (UWP)带有背景的边框元素隐藏了它下面的其他元素。 (UWP)
【发布时间】:2020-06-15 16:14:24
【问题描述】:

我有一个带有多个子按钮的网格。现在我想给这个 Grid 行一个背景颜色。所以我添加了一个像这样背景颜色的边框

                    Border brd = new Border
                {
                    Margin = new Thickness(0, 2, 0, 2),
                    Background = (SolidColorBrush) Application.Current.Resources["RedBrush"],
                    CornerRadius = new CornerRadius(22),

                };
                Grid.SetColumn(brd,startColumn);
                Grid.SetColumnSpan(brd, 9- startColumn);
                Grid.SetRow(brd, startRow);
                GridMain.Children.Add(brd);

对我来说一切都很好,但是当它被渲染时,所有按钮都被隐藏,因为边框的背景颜色在行中仅可见。我该如何克服呢?

不是从后面的代码中添加边框,如果我在 Xaml 中添加一切正常(边框背景作为按钮背景可见,按钮文本可见)

   <Border  Grid.Row="5"  Grid.Column="1" Grid.ColumnSpan="8" Background="{StaticResource RedBrush}" CornerRadius="22" Margin="0 2 0 2" />

但由于各种原因,我希望能够从代码本身添加此边框。

【问题讨论】:

    标签: xaml uwp uwp-xaml


    【解决方案1】:

    如果要设置Grid的背景颜色,可以直接使用Grid.Background设置,无需添加新的Border。

    但是如果需要添加Border作为背景,请注意代码中的调用顺序。

    一般来说,后面添加的元素会放在前一个元素的顶层,形成覆盖的视觉效果。

    根据您的问题描述。可以先放上加边框的代码。

    谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-19
      • 2018-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-08
      相关资源
      最近更新 更多