代码之家  ›  专栏  ›  技术社区  ›  Alan2

向C中的网格元素添加具有跨距的子元素时超出范围#

  •  0
  • Alan2  · 技术社区  · 4 年前

    我有这个密码。除了第一行使用网格。添加我正试着做一个跨度。

    var grid = new Grid();
    grid.ColumnSpacing = 4;
    grid.RowSpacing = 8;
    grid.Margin = 20;
    grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) });
    grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) });
    grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) });
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
    
    grid.Children.Add(new BaseButton("A", "A"), 0, 2, 0, 0);
    grid.Children.Add(new BaseButton("B", "B"), 0, 1);
    grid.Children.Add(new BaseButton("C", "C"), 1, 1);
    grid.Children.Add(new BaseButton("D", "D"), 0, 2);
    grid.Children.Add(new BaseButton("E", "E"), 1, 2);
    grid.Children.Add(new BaseButton("F", "F"), 0, 3);
    grid.Children.Add(new BaseButton("G", "G"), 1, 3);
    grid.Children.Add(new BaseButton("H", "H"), 2, 3);
    

    grid.Children.Add(new BaseButton("A", "A"), 0, 2, 0, 0);
    

    System.ArgumentOutOfRangeException has been thrown. Specified argument was out of the range of valid values.
    

    参数名称:bottom

    enter image description here

    有人能回顾一下我所拥有的,并对可能出错的地方发表评论吗?

    1 回复  |  直到 4 年前
        1
  •  1
  •   Jason    4 年前

    docs

    • -柱跨的右边缘。必须大于左。视图不会占用此列,但会在其前面停止。
    • -行跨距的下边缘。必须大于顶部。