Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将自定义对象映射到表单_C#_Forms_Map - Fatal编程技术网

C# 将自定义对象映射到表单

C# 将自定义对象映射到表单,c#,forms,map,C#,Forms,Map,我可以将对象映射或自动映射到窗体以及从窗体映射到对象吗? 我有以下代码: // Class model class Model1 { Property1; Property2; Property3; ... } // Form. I use this form to create and update data of Model1 public partial class FormModel1 : Form { private Model1 model1

我可以将对象映射或自动映射到窗体以及从窗体映射到对象吗? 我有以下代码:

// Class model
class Model1
{
    Property1;
    Property2;
    Property3;
    ...
}

// Form. I use this form to create and update data of Model1
public partial class FormModel1 : Form
{
    private Model1 model1;
    ...

    private void LoadData()
    {
        Property1Txt.Text = model1.Property1;
        Property2Txt.Text = model1.Property2;
        Property3Txt.Text = model1.Property3;
    }

    private void SaveButton_Click(object sender, EventArgs e)
    {
        model1.Property1 = Property1Txt.Text;
        model1.Property2 = Property2Txt.Text;
        model1.Property3 = Property3Txt.Text;

        model1.Save(); 
    }
}
注意,我简化了这个例子。 我想以数字方式将数据从模型设置到表单,从表单设置到模型


我如何做到这一点?

实现这一点的一种方法是使用

另一种方法是使用控件的属性

看看这些,花点时间理解这些概念,如果有任何问题,请回来。当然,在一个新问题中:)


学习愉快

您可以按如下方式实现数据绑定

property1Txt.DataBindings.Add("Text", model1, "Property1"); 
要在属性更改时更新文本框,还需要实现
inotifypropertychanged
。看

那么你需要使用

property1Txt.DataBindings.Add("Text", model1, "Property1", false, DataSourceUpdateMode.OnPropertyChanged ); 
添加(“文本”,model1,“Property1”);