0

我正在创建多个表单,这些表单将使用相同的数据填充 ListView。所以我想不是在每个表单中单独填充数据,而是创建一个派生的 ListView 并将数据填充放在构造函数中。

我遇到的问题是,当我使用设计器将控件添加到表单时,它会将硬编码的 ListViewItems 添加到设计器文件中的 ListView 中。因此,当应用程序实际运行时,它会创建重复项。

我知道为什么会发生这种情况,但我想找到一种方法来防止它。

谢谢你的帮助。

4

1 回答 1

0

经过更多研究,我找到了解决问题的方法。

我需要的是一种仅在“DesignMode”为假时执行我的代码的方法。

由于 DesignMode 在构造函数中始终为 false,因此我对 OnCreateControl 事件进行了覆盖并将其放在那里:

protected override void OnCreateControl()
{
    if (!DesignMode)
    {
        // Populate data
    }
    base.OnCreateControl();
}
于 2012-09-28T15:37:03.470 回答