如何以编程方式添加用户控件

本文关键字:添加 用户 控件 方式 编程 | 更新日期: 2023-09-27 17:51:13

我试图以编程方式添加一个UserControl每次按钮被点击。第一次它工作,但之后我可以看到控件的数量增加,但没有显示。

private void AddRecord()
    {
        StackPanel wrp = (this.Content as Grid).Children[0] as StackPanel;
        wrp.Children.Clear();
        for (int i = 0; i < m_viewModel.RecordTimeConfig.Count; i++)
        {
            wrp.Children.Add(m_viewModel.RecordTimeConfig[i]);
        } 
    }

每次我点击按钮m_viewModel。RecordTimeConfig增加。

如何以编程方式添加用户控件

这是你的问题

wrp.Children.Clear();

每次你按下这个键的时候,你就删除了堆栈面板上的所有控件,所以你在添加一个新的控件的同时也删除了一个已经存在的控件。

我找到问题了。

这是由于用户控件的大小大于窗口的大小。

谢谢大家的帮助