【发布时间】:2016-02-18 06:53:53
【问题描述】:
我有一个小的设计问题,由于某种原因我找不到相关的谷歌点击。
我有一个在我的应用程序中使用的用户控件。 主窗体打开第二个窗体作为对话框。吨 他的第二种形式是使用包含列表框的用户控件。
当然,我想在表单处理时保留列表框项,因此我在主表单中保留了一个私人列表。
List<string> _listofFirstCoordinates = new List<string>();
现在的问题是,对话框表单应该负责将列表中继到主表单还是代码应该在用户控件中?
填充列表的应该是用户控件
lst_Coordinates.Items.AddRange(ListOfCoordinates.Cast<object>().ToArray());
或者使用它的表单应该填充它(子表单)
uc_EditCoordinates.ListOfCoordinates = ListOfCoordinates;
还可以让用户控件成为持有它的表单的公共变量,以便可以直接更改它还是设计不好?
编辑: 顺便说一句,数据现在保存在表单之间来回的变量中,因为用户必须在提交之前完成所有子表单并最终将其保存到数据库中。所以这是一个
var _listofFirstCoordinates = new List<string>();
来回走动。
【问题讨论】:
-
我认为这可能更适合代码审查。 codereview.stackexchange.com