【发布时间】:2014-11-18 21:37:37
【问题描述】:
我有一个包含文本框和组合框的用户控件。我已将组合框的 Item 属性暴露给用户控件的客户端,因此:
public System.Windows.Forms.ComboBox.ObjectCollection Item
{
get { return baseComboBox.Items; }
}
我将用户控件添加到 Windows 窗体,并使用窗体设计器中的属性值编辑器设置项目列表。然后我运行应用程序,组合框的下拉列表为空。为了确认设计时添加的项目不在列表中,我在客户端表单中添加了以下两行代码:
textBox1.Text = userControl1.Items.Count.ToString();
userControl1.Items.Add("Test item");
当我重新运行应用程序时,测试框显示计数为 0(零),并且用户控件的下拉列表仅包含“测试项”。
考虑到可能在设计时引用的用户控件的实例与在运行时引用的实例不同,我在设计时设置了用户控件的 BackColor 属性。当我重新运行应用程序时,用户控件的 BackColor 是我在设计器中设置的。
关于为什么项目的设计时间设置没有延续到运行时间的任何想法?
【问题讨论】:
标签: c# windows combobox custom-controls items