Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.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#_Entity Framework_Linq_Combobox_Textbox - Fatal编程技术网

C# 如果更改组合框值,则更改文本框值 如果我更改组合框,我将尝试自动加载文本框值

C# 如果更改组合框值,则更改文本框值 如果我更改组合框,我将尝试自动加载文本框值,c#,entity-framework,linq,combobox,textbox,C#,Entity Framework,Linq,Combobox,Textbox,这是我的表格 这是我的仓库 区域存储库 public string GetAreaNamebyAreaID(int areaID) { var result = db.btbArea.SingleOrDefault(g => g.AreaID == areaID); if (result == null) return string.Empty; return result.AreaName;

这是我的表格

这是我的仓库

区域存储库

    public string GetAreaNamebyAreaID(int areaID)
    {
        var result = db.btbArea.SingleOrDefault(g => g.AreaID == areaID);

        if (result == null)

            return string.Empty;

        return result.AreaName;
    }
    public string GetHowzehNamebyHoezehID(int howzehID)
    {
        var result = db.btbHowzeh.SingleOrDefault(g => g.HowzehID == howzehID);
        if (result == null)

            return string.Empty;

        return result.HowzehName;
    }
    public string GetPaygahNamebyPaygahID(int paygahID)
    {
        var result = db.btbPaygah.SingleOrDefault(g => g.PaygahID == paygahID);
        if (result == null)

            return string.Empty;

        return result.PaygahName;
    }
何其乐观

    public string GetAreaNamebyAreaID(int areaID)
    {
        var result = db.btbArea.SingleOrDefault(g => g.AreaID == areaID);

        if (result == null)

            return string.Empty;

        return result.AreaName;
    }
    public string GetHowzehNamebyHoezehID(int howzehID)
    {
        var result = db.btbHowzeh.SingleOrDefault(g => g.HowzehID == howzehID);
        if (result == null)

            return string.Empty;

        return result.HowzehName;
    }
    public string GetPaygahNamebyPaygahID(int paygahID)
    {
        var result = db.btbPaygah.SingleOrDefault(g => g.PaygahID == paygahID);
        if (result == null)

            return string.Empty;

        return result.PaygahName;
    }
工资假定

    public string GetAreaNamebyAreaID(int areaID)
    {
        var result = db.btbArea.SingleOrDefault(g => g.AreaID == areaID);

        if (result == null)

            return string.Empty;

        return result.AreaName;
    }
    public string GetHowzehNamebyHoezehID(int howzehID)
    {
        var result = db.btbHowzeh.SingleOrDefault(g => g.HowzehID == howzehID);
        if (result == null)

            return string.Empty;

        return result.HowzehName;
    }
    public string GetPaygahNamebyPaygahID(int paygahID)
    {
        var result = db.btbPaygah.SingleOrDefault(g => g.PaygahID == paygahID);
        if (result == null)

            return string.Empty;

        return result.PaygahName;
    }
如果更改组合框索引,我将尝试加载文本框值

    private void frmAreasManage_Load(object sender, EventArgs e)
    {
        //Load AreaComboBox Source from AreaTable
        using (UnitOfWork db = new UnitOfWork())
        { 
            cmbAreaNumber.DataSource = db.AreaRepository.Get();
            cmbAreaNumber.DisplayMember = "AreaNumber";
            cmbAreaNumber.ValueMember = "AreaID";
        }
    }

    private void cmbAreaNumber_SelectedIndexChanged(object sender, EventArgs e)
    {
        cmbAreaNumber.SelectedIndex = 0;
        string selectedValue = cmbAreaNumber.SelectedValue.ToString();
        using (UnitOfWork db = new UnitOfWork())
            if (!string.IsNullOrEmpty(selectedValue))
            {
                {
                    //Load HowzehhComboBox From HowzehTable Filter By AreaID
                    cmbHowzehNumber.DataSource = db.HowzehRepository.GetNameIDByFilter(selectedValue);

                    cmbHowzehNumber.DisplayMember = "HowzehNumber";
                    cmbHowzehNumber.ValueMember = "HowzehID";

                    //Get AreaName from AreaTable Filter By AreaID
                    txtAreaName.Text = db.AreaRepository.GetAreaNamebyAreaID(Convert.ToInt32(cmbAreaNumber.SelectedValue));
                }
            }
    }

    private void cmbHowzehNumber_SelectedIndexChanged(object sender, EventArgs e)
    {
        string selectedValue = cmbHowzehNumber.SelectedValue.ToString();
        using (UnitOfWork db = new UnitOfWork())
            if (!string.IsNullOrEmpty(selectedValue))
            {
                //Load PaygahComboBox From PaygahTable Filter By HowzehID
                cmbPaygahNumber.DataSource = db.PaygahRepository.GetNameIDByFilter(selectedValue);

                cmbPaygahNumber.DisplayMember = "PaygahNumber";
                cmbPaygahNumber.ValueMember = "PaygahID";
                //Get HowzehName from HowzehTable Filter By HowzehID
                txtHowzehName.Text = db.HowzehRepository.GetHowzehNamebyHoezehID(Convert.ToInt32(selectedValue));
            }
    }

    private void cmbPaygahNumber_SelectedIndexChanged(object sender, EventArgs e)
    {
        using (UnitOfWork db = new UnitOfWork())
        {
            //Get HowzehName from HowzehTable Filter By HowzehID
            txtPaygahName.Text = db.PaygahRepository.GetPaygahNamebyPaygahID(Convert.ToInt32(selectedValue));
        }
    }
}
在我启动代码后,我收到了这个错误


我处理空值,如果我忽略这一行,一切都很好

此代码始终解决我的问题如果我找到解决问题的方法,我会回答我的问题以帮助其他人

private void frmAreasManage_Load(object sender, EventArgs e)
    {
        //Load AreaComboBox Source from AreaTable
        using (UnitOfWork db = new UnitOfWork())
        { 
            // At first assign properties DisplayMember and ValueMember.
            cmbAreaNumber.DisplayMember = "AreaNumber";
            cmbAreaNumber.ValueMember = "AreaID";
            // And then assign DataSource property of the cmbLayerName.
            cmbAreaNumber.DataSource = db.AreaRepository.Get();
        }
    }
       private void cmbAreaNumber_SelectedIndexChanged(object sender, EventArgs e)
        {
            string selectedValue = cmbAreaNumber.SelectedValue.ToString();
            using (UnitOfWork db = new UnitOfWork())
                if (!string.IsNullOrEmpty(selectedValue))

                {
                    /// At first assign properties DisplayMember and ValueMember.
                    cmbHowzehNumber.DisplayMember = "HowzehNumber";
                    cmbHowzehNumber.ValueMember = "HowzehID";

                    // And then assign DataSource property of the cmbHowzehNumber.
                    cmbHowzehNumber.DataSource = db.HowzehRepository.GetNameIDByFilter(selectedValue);

                    //Get AreaName from AreaTable Filter By AreaID
                    txtAreaName.Text = db.AreaRepository.GetAreaNamebyAreaID(Convert.ToInt32(selectedValue));
                }
        }

        private void cmbHowzehNumber_SelectedIndexChanged(object sender, EventArgs e)
        {
            string selectedValue = cmbHowzehNumber.SelectedValue.ToString();
            using (UnitOfWork db = new UnitOfWork())
                if (!string.IsNullOrEmpty(selectedValue))
                {
                 //Load PaygahComboBox From PaygahTable Filter By HowzehID
                    cmbPaygahNumber.DataSource = db.PaygahRepository.GetNameIDByFilter(selectedValue);

                    cmbPaygahNumber.DisplayMember = "PaygahNumber";
                    cmbPaygahNumber.ValueMember = "PaygahID";
                    //Get HowzehName from HowzehTable Filter By HowzehID
                    txtHowzehName.Text = db.HowzehRepository.GetHowzehNamebyHoezehID(Convert.ToInt32(selectedValue));
                }
        }

        private void cmbPaygahNumber_SelectedIndexChanged(object sender, EventArgs e)
        {


            string selectedValue = cmbHowzehNumber.SelectedValue.ToString();
            using (UnitOfWork db = new UnitOfWork())
            {
                 //Get HowzehName from HowzehTable Filter By HowzehID
                 txtPaygahName.Text = db.PaygahRepository.GetPaygahNamebyPaygahID(Convert.ToInt32(selectedValue));
            }
        }

这并不能回答这个问题。若要评论或要求作者澄清,请在其帖子下方留下评论。-@Yurii我修复了我的问题并更新了我的帖子谢谢你们的推荐,我解决了我的问题,现在其他人可以看到修复代码了