Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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
实体框架,多值1单元/Datagridview c#_C#_.net_Entity Framework - Fatal编程技术网

实体框架,多值1单元/Datagridview c#

实体框架,多值1单元/Datagridview c#,c#,.net,entity-framework,C#,.net,Entity Framework,我有一个datagridview,我需要在同一单元格中的数据库中有2个值 我需要在同一列中有两个复选框,它们当前是数据库中的小整数 我正在使用实体框架,如果有帮助的话 我还需要能够将这些值存储回数据库 我不完全确定从哪里开始,所以任何指点都会很棒 代码是带有DataBindingProjection类的基本EF private void HtReports_Load(object sender, EventArgs e) { dataGridView1.Defau

我有一个datagridview,我需要在同一单元格中的数据库中有2个值

我需要在同一列中有两个复选框,它们当前是数据库中的小整数

我正在使用实体框架,如果有帮助的话

我还需要能够将这些值存储回数据库

我不完全确定从哪里开始,所以任何指点都会很棒

代码是带有DataBindingProjection类的基本EF

    private void HtReports_Load(object sender, EventArgs e)
    {
        dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;
        dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;

        fmsEntities context = new fmsEntities();
        var query = (from f in context.funerals
                    where f.IsPencil == 0
                    join d in context.deceaseddetails on f.DeceasedID equals d.ID
                    join i in context.funeralservices on f.ID equals i.FuneralID
                    where i.IsAlternative == 0
                    join h in context.htvalues on f.HtValuesID equals h.ID
                    join p in context.placeofdeaths on f.PlaceOfDeathID equals p.ID
                    join c in context.coroners on f.CoronerID equals c.ID
                     let val1 = d.DateOfDeath
                     let val2 = d.DateOfBirth
                     let val3 = i.Date
                     orderby i.Date
                     select new
                     {
                         d.LastName,
                         d.FirstName,
                         val2,
                         val1,
                         f.CremOrInt,
                         FormsSigned1 = h.FormsSigned1 ?? 0,
                         FormsSigned2 = h.FormsSigned2 ?? 0,
                     }).ToList();

        var dataobjects = query.Select(d => new DataBindingProjection
        {
            DeceasedName = (d.FirstName + Environment.NewLine + d.LastName),
            DOBDOD = (d.val2.HasValue ? d.val2.Value.ToShortDateString() : string.Empty) + Environment.NewLine +
            (d.val1.HasValue ? d.val1.Value.ToShortDateString() : string.Empty),
            CremInt = d.CremOrInt
        }).ToList();

        dataGridView1.DataSource = dataobjects;

        dataGridView1.Columns[0].HeaderText = "Last Name" + Environment.NewLine + "First Name";
        dataGridView1.Columns[1].HeaderText = "DOB" + Environment.NewLine + "DOD";
        dataGridView1.Columns[2].HeaderText = "Crem/Int";
    }


    private class DataBindingProjection
    {
        public string DeceasedName {get; set;}
        public string DOBDOD {get; set;}
        public string CremInt { get; set; }
    }

这是winforms还是wpf,还是asp.net

我将开始创建一个接受这两个值的自定义控件,并显示您的复选框。然后将数据输入所述控件并将其放入数据网格

我不确定这是否与您的用例类似,但您可能想检查一下,解释如何在单个datagridview单元中获取多个控件


这可能无法完全回答您的问题,但可能会让您领先一步

谢谢,我根本没有尝试使用自定义控件,因此在同一单元格中设置两个复选框可能会有所帮助!