簡體   English   中英

如果我更改 combobox 值,則更改文本框值

[英]change textbox value if i change combobox value

如果我更改我的 combobox,我將嘗試自動加載文本框值

這是我的表格


在此處輸入圖像描述

這是我的存儲庫

區域存儲庫

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

        if (result == null)

            return string.Empty;

        return result.AreaName;
    }

Howzeh存儲庫

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

            return string.Empty;

        return result.HowzehName;
    }

Paygah存儲庫

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

            return string.Empty;

        return result.PaygahName;
    }

如果我更改 combobox 索引,我將嘗試加載我的文本框值

    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));
        }
    }
}

在我開始我的代碼后,我收到了這個錯誤

在此處輸入圖像描述

我處理我的 null 如果我忽略這條線一切都很好!

這段代碼解決了我的問題(如果我找到解決我的問題的方法,我總是回答我的問題以幫助其他人)

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));
            }
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM