我想显示从一种形式传递到另一种形式的模型数据。
在第一种形式中,我将数据保存到数据库中,同时我又将数据恢复到模型中。 现在,我想将此模型发送到新表单。 将其发送到新表单后,我想在Datagridview中显示它。 我做的其余事情都是正确的,但是现在我无法在datagridview中显示它。 老实说,我不知道如何在数据网格视图中显示模型。
company = GlobalConfig.Connections.CreateCompany(company);
// MessageBox.Show(Convert.ToString(company.id));
AddInformationForm form = new AddInformationForm(company);
form.ShowDialog();
公司是一个典范。
public class CompanyModel
{
public int id { get; set; }
public int Mohre { get; set; }
public string CompanyNameEn { get; set; }
public string CompanyNameAr { get; set; }
public int CompanyLicense { get; set; }
public DateTime CompanyLicenseExpiry { get; set; }
public int MOI { get; set; }
public DateTime MOIExpiry { get; set; }
public ContactModel Contacts { get; set; }
public SectorModel Sector { get; set; }
public CompanyCategoryModel Category { get; set; }
public CompanyModel()
{
}
}
如何在datagridview中显示它。
而且当我只想将值分配给标签时,它为我提供了空异常引用
public partial class AddInformationForm : Form
{
private CompanyModel company = new CompanyModel();
public AddInformationForm()
{
InitializeComponent();
}
public AddInformationForm(CompanyModel cmp)
{
company = cmp;
}
private void AddInformationForm_Load(object sender, EventArgs e)
{
CompanyNameLabel.Text = company.CompanyNameAr;
SectorLabel.Text = company.Sector.Name;
CategoryLabel.Text = company.Category.CategoryName;
LicenseLabel.Text = Convert.ToString(company.CompanyLicense);
MohreLabel.Text = Convert.ToString(company.Mohre);
MOILabel.Text = Convert.ToString(company.MOI);
}
}
这些值可以很好地传递,并且也可以显示,但仍然给出null异常。
答案 0 :(得分:0)
尝试如下:
dataGridView1.DataSource = new List<CompanyModel> { company };
或
var listCompanies = new List<CompanyModel> { company };
dataGridView1.DataSource = listCompanies.Select(c =>
new
{
License = c.CompanyLicense,
Name = c.CompanyNameAr,
SectorName = c.Sector.Name//Todo:set your property
}).ToList();