Как добавить значения из выпадающего списка и флажок в gridview - PullRequest
1 голос
/ 04 июня 2019

РЕДАКТИРОВАТЬ: добавил код и ссылку на изображение `публичный частичный класс DodavanjeNamirnice: System.Web.UI.Page {

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            DataTable dtTemp = new DataTable(); ;
            dtTemp.Columns.Add(new DataColumn("Namirnica", typeof(string)));
            dtTemp.Columns.Add(new DataColumn("Mjerna Jedinica", typeof(string)));

            Session["Data"] = dtTemp;
        }
    }

    protected void BindGrid()
    {
        string constr = ConfigurationManager.ConnectionStrings["Data Source =.\\SQLEXPRESS; Initial Catalog = pra; Integrated Security = True"].ConnectionString;
        string query = "SELECT * FROM Namirnica";
        using (SqlConnection con = new SqlConnection(constr))
        {
            using (SqlDataAdapter sda = new SqlDataAdapter(query, con))
            {
                using (DataTable dt = new DataTable())
                {
                    sda.Fill(dt);
                    GridView1.DataSource = dt;
                    GridView1.DataBind();
                }
            }
        }
    }

    protected void btnAdd_Click(object sender, EventArgs e)
    {
        var dataTableFromSession = Session["Data"] as DataTable;
        var dataRow = dataTableFromSession.NewRow();
        dataRow["Namirnica"] = DropDownList2.SelectedItem.Text;
        dataRow["Mjerna Jedinica"] = CheckBoxList1.SelectedItem.Text;
        dataTableFromSession.Rows.Add(dataRow);
        Session["Data"] = dataTableFromSession;
        GridView1.DataSource = dataTableFromSession;
        GridView1.DataBind();
    }
}`I got 2 dropdownlists , first one is filtering data in the 2nd,also 1st dropdownlist is connected to sql table as is the other one.

У меня есть флажок, который отображает данные из другой таблицы. И моя проблема в том, что я хочу добавить значения, выбранные во втором раскрывающемся списке, и флажок в виде сетки в моей веб-форме.

Я попытался добавить новые столбцы вручную, но в результате отображается только первое значение из выпадающего списка, также отображается только одно значение из контрольного списка. https://gyazo.com/59ea939b26deb55d3f31e68057249253

1 Ответ

0 голосов
/ 04 июня 2019

Установите метод для изменения выбранной или созданной ячейки в DataGridViewComboBoxCell, а затем передайте ему источник данных из раскрывающегося списка.

 //could be whatever event you want such as the creation of a new DataRow in your DataGridView
 private void gridView1_CellClick(object sender, DataGridViewCellEventArgs e)
 {
         dataGridView1[e.ColumnIndex, e.RowIndex] = new DataGridViewComboBoxCell();
         DataGridViewComboBoxCell cb = (DataGridViewComboBoxCell)dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
         cb.DataSource = dataSource;
 }

Вы можете сделать то же самое для флажка, но вместо этого создать новый DataGridViewCheckBoxCell (). После того, как пользователь выбрал значение, вы можете просто переключить его на обычную ячейку, если хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...