【发布时间】:2015-09-23 09:33:28
【问题描述】:
我正在尝试将列表传递给子窗体中的 UserControl (UC),以填充此 UC 上的组合框。我试图在 UC 上声明一个公共属性并将数据从 MainForm 传递给它以填充数据。 像这样:
主窗体
private void OpenChildForm()
{
ChildForm cf = new ChildForm(myList); // list is global one
UserControl uc = new UserControl();
cf.Show();
uc.InitializeLookup(myList);
}
子表单
public List<string> SelectedItems { get; set; }
public void InitializeLookup(List<string> listItems)
{
SelectedItems = listItems.Select(s => s.ZipCode)
.Distinct()
.ToList();
}
无论我在哪里尝试访问 SelectedItems,它都会变成空的,不管我在哪里执行此操作:在 UserControl_Load 事件处理程序中,或在 UserControl_Paint 事件处理程序中。有什么办法可以将此列表保存在内存中?我不想从文件中保存/加载它。
提前致谢。
【问题讨论】:
-
你只是想让 myList 传递子表单对吗?