修改除创建的表单之外的表单上的对象

时间:2014-04-23 21:01:54

标签: c# forms object

我有一个在Form1中创建的对象,然后将该对象传递给Form2。

这是修改Form1对象实例(pois_por_punto)属性的好方法吗?

到目前为止,这就是我所做的:

Form1中的

public List<POI> pois_por_punto;
pois_por_punto = new List<POI>();

然后:

   private void btn_editar_pois_Click(object sender, EventArgs e)
        {
            Form formulario = new Form2(this, pois_por_punto);
            formulario.ShowDialog();
        }

在Form2中:

public partial class Form2: Form
    {
        private List<POI> _pois;

   public Editar_POIs(Form1 formprincipal, List<POI> pois)
        {
            _pois = pois;
        }

然后在我的代码中我改变了_pois属性然后我这样做:

 formprincipal.pois_por_punto = _pois;

}

我的POI课程就像这样

  public class POI
    {
        public decimal POI_x { get; set; }
        public decimal POI_y { get; set; }
        public decimal POI_z { get; set; }
    }

1 个答案:

答案 0 :(得分:1)

答案在某种程度上是一个环境问题。有些模式适合您可能称之为工业级代码的模式,并且有适合于完成工作和前往公园的模式。话虽如此,我会说它可能很好,如果有效的话;但是,这里有一些您可能会发现有用的资源:

这个答案也可能有用,因为它描述了可以用于像这样的项目的分离模式。