用于更新Gridview列的文本框

时间:2014-03-28 04:10:57

标签: c# asp.net sql gridview textbox

我有一个Gridview。我的Gridview包含4列:日期,房间ID,数量,从日历中选择的任何给定时间段内可用房间数的价格。对于我的数量和价格,我希望允许我的用户选择让他们输入数量的文本框字段以显示箭头,以便用户单击以在所有日期和相同的价格选项中应用相同的数量。我到处寻找,但最常见的答案是找到Gridviews的批量更新或显示到文本框中。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:3)

我有一个小解决方案:

以下是我创建虚拟数据的数据:

        DataTable dtGridView = new DataTable();
        //dates, room id, quantity, price
        dtGridView.Columns.Add("dates", typeof(string));
        dtGridView.Columns.Add("room_id", typeof(int));
        dtGridView.Columns.Add("quantity", typeof(int));
        dtGridView.Columns.Add("price", typeof(double));

        dtGridView.Rows.Add(new object[] { "3/28/2014", 1, 11, 150 });
        dtGridView.Rows.Add(new object[] { "3/27/2014", 1, 5, 160 });
        dtGridView.Rows.Add(new object[] { "3/21/2014", 2, 6, 300 });
        dtGridView.Rows.Add(new object[] { "3/20/2014", 3, 9, 70 });

        dataGridView1.DataSource = dtGridView;

以下是datagridview的虚拟数据,其中包含数据,文本框和按钮,如下所示: enter image description here

现在,在您的按钮点击事件中,您可以编写以下代码,根据在文本框中输入的价格更新所有价格字段。

  private void button1_Click(object sender, EventArgs e)
    {
        //GET UPDATING PRICE FROM TEXTBOX
        double _price = Convert.ToDouble(textBox1.Text);

        //LOOP ON DATAGRIDVIEW
        for (int i = 0; i < dataGridView1.Rows.Count; i++)
        {
            dataGridView1.Rows[i].Cells["price"].Value = _price;
        }
    }

现在运行您的程序并尝试在文本框中输入更新价格并单击按钮..希望这可以帮助您.... :)