如何在C#windows应用程序中插入datagridview的最新行顶部 [英] How to insert latest row top of the datagridview in C# windows application

查看:93
本文介绍了如何在C#windows应用程序中插入datagridview的最新行顶部的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我将数据输入文本框并单击添加按钮后,我有3个文本框和一个按钮。我希望每次都插入datagridview的最新行顶部。请帮我这个。

提前谢谢。



我的尝试:



I have 3 textboxes and one button after i enter data into textboxes and click add button.I want insert latest row top of the datagridview everytime.Please help me on this.
Thanks in advance.

What I have tried:

 private void button1_Click(object sender, EventArgs e)
{
        DataTable MyTable = new DataTable();



DataColumn values = new DataColumn("slno");

DataColumn values1 = new DataColumn("startno");

DataColumn values2 = new DataColumn("noc");
DataColumn values3 = new DataColumn("endno");

MyTable.Columns.Add(values);

MyTable.Columns.Add(values1);
MyTable.Columns.Add(values2);
MyTable.Columns.Add(values3);
DataRow rd = MyTable.NewRow();
rd[0] = textBox1.Text;

rd[1] = textBox2.Text;

rd[2] = textBox3.Text;
rd[3] = textBox4.Text;




dataGridView1.Rows.Insert(0);

dataGridView1.DataSource = MyTable;

}

推荐答案

使用下面的代码点击按钮



Use Below code in button click

DataTable MyTable = (DataTable)ViewState["Dt"];
            if(MyTable== null)
            {
                MyTable = new DataTable();
                DataColumn values = new DataColumn("slno");
                DataColumn values1 = new DataColumn("startno");
                DataColumn values2 = new DataColumn("noc");
                DataColumn values3 = new DataColumn("endno");

                MyTable.Columns.Add(values);
                MyTable.Columns.Add(values1);
                MyTable.Columns.Add(values2);
                MyTable.Columns.Add(values3);
            }
            
            DataRow rd = MyTable.NewRow();
            rd[0] = textBox1.Text;

            rd[1] = textBox2.Text;

            rd[2] = textBox3.Text;
            rd[3] = textBox4.Text;


            MyTable.Rows.Add(rd);
            ViewState["Dt"] = MyTable;
            dataGridView1.DataSource = MyTable;
            dataGridView1.DataBind();


在winform中更容易。比如全局声明Mytable并使用blow





In winform That is more easy. like declare Mytable globally and use blow


if (dataGridView1.RowCount == 0)
           {
               MyTable = new DataTable();
               DataColumn values = new DataColumn("slno");
               DataColumn values1 = new DataColumn("startno");
               DataColumn values2 = new DataColumn("noc");
               DataColumn values3 = new DataColumn("endno");

               MyTable.Columns.Add(values);
               MyTable.Columns.Add(values1);
               MyTable.Columns.Add(values2);
               MyTable.Columns.Add(values3);
           }


               DataRow rd = MyTable.NewRow();
               rd[0] = textBox1.Text;

           rd[1] = textBox2.Text;

           rd[2] = textBox3.Text;
           rd[3] = textBox4.Text;


           dataGridView1.DataSource = MyTable;
           dataGridView1.Sort(dataGridView1.Columns["slno"], ListSortDirection.Descending);


这篇关于如何在C#windows应用程序中插入datagridview的最新行顶部的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆