C#/ WPF - 无法将RowDefinition添加到Grid OnVisualChildrenChanged中

时间:2017-11-25 08:46:29

标签: c# wpf

将自动将子项添加到单独的行中。所以我创建了自己的网格,添加方法来添加新行并将其处理为OnVisualChildrenChanged。但是,只要我在其中添加新的UIElement,RowDefinitions.IsReadOnly属性为true,我就不能这样做。

public class GridWithAutoRows : Grid
{
    public void AddRow()
    {
        this.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
    }

    protected override void OnVisualChildrenChanged(DependencyObject visualAdded, DependencyObject visualRemoved)
    {

        this.AddRow();
        Grid.SetRow(visualAdded as UIElement, this.RowDefinitions.Count - 1);

        base.OnVisualChildrenChanged(visualAdded, visualRemoved);
    }
}

感谢您的任何想法。

0 个答案:

没有答案