有没有一种方法可以从网格继承并在指定网格内容时仍然使用 Children = ?

问题描述

我有这个代码

public class MyGrid1 : BaseGrid
{
    public MyGrid1()
    {
        var a = new Label() { Text = "A" };
        var b = new Label() { Text = "B" };
        this.Children.Add(a);
        this.Children.Add(b);
    }
}

我可以这样表示,但现在我在网格内有一个网格

public class MyGrid2 : BaseGrid
{
    public MyGrid2()
    {
        var g = new Grid()
        {
            Children =
            {
                new Label() { Text = "A" },new Label() { Text = "B" }
            }
        };
        this.Children.Add(g);
    }
}

是否有某种方法可以添加到 BaseGrid 功能中以允许我执行此操作:

public class MyGrid3 : BaseGrid
{
    public MyGrid3()
    {
        Children =
            {
                new Label() { Text = "A" },new Label() { Text = "B" }
            }
        };
    }
}

BaseGrid 的简化版:

public abstract partial class BaseGrid : Grid
{
    protected BaseGrid()
    {
        ColumnSpacing = 0;
        RowSpacing = 0;
        this.Margin(0);
        this.CenterExpandVertical();
        var tap = new TapGestureRecognizer();
        tap.Tapped += Tap_Tapped;
        GestureRecognizers.Add(tap);
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)