按最新的c#

时间:2018-09-27 09:04:11

标签: c# .net

我有一个小程序,用于将值存储在“ datagridview”中。问题在于新值隐藏在数据网格的中间。我只是希望将最新上传的“值”放置在数据顶部。因此,每次有人上载新值时,都应将其存储在datagridview的顶部。谢谢。

https://gyazo.com/0f44611556133d8db60e66e910fd4fa3 https://gyazo.com/81a2996928b5f21f1aec5f20f9861b5d

        //Showing history
        con.Open();
        SqlCommand cmd = con.CreateCommand();
        cmd.CommandType = CommandType.Text;
        cmd.CommandText = "SELECT (Hund),(Vem),(Vad),(Datum),(Tid) FROM lexidatabase.dbo.tbl_rastad WHERE username = @Username";
        cmd.Parameters.Add("@Username", SqlDbType.VarChar, 50).Value = Login.username;
        cmd.ExecuteNonQuery();
        DataTable dt = new DataTable();
        SqlDataAdapter sa = new SqlDataAdapter(cmd);
        sa.Fill(dt);
        historik.DataSource = dt;
        con.Close();

4 个答案:

答案 0 :(得分:0)

请尝试以下操作,这是在代码中对DGV进行排序的方法,DataGridView中有一个称为“排序”的方法

this.dataGridView1.Sort(this.dataGridView1.Columns["Name"],ListSortDirection.Ascending);

检查此Microsoft定义 link

答案 1 :(得分:0)

如果要在顶部看到最后一个添加项,则需要增加值或创建日期。

如果要按名称或其他字段列出列表。

SELECT (Hund),(Vem),(Vad),(Datum),(Tid) FROM lexidatabase.dbo.tbl_rastad WHERE username = @Username Order By Hund,Vem,Datum asc
可以使用

asc或desc。

Order By Hund,Vem,Datum asc

Order By Hund asc

Order By Datum asc

Order By Tid asc

我希望我能帮忙

答案 2 :(得分:0)

您可以尝试在表中添加新列,例如[创建日期],[日期添加]或类似的内容,然后在查询中可以使用ORDER BY子句。

ORDER BY [Creation Date] DESC

ORDER BY [Date Add] DESC

答案 3 :(得分:0)

我从“ snn brn ”那里得到了一个解决方案。

cmd.CommandText = "SELECT (Hund),(Vem),(Vad),(Datum),(Tid) 
FROM lexidatabase.dbo.tbl_rastad WHERE username = @Username ORDER BY (Datum) desc,(Tid) desc";

因此,基本上,您必须按datum(date)tid(time)对其进行排序,然后在其末尾添加desc。然后,列表将在顶部并按顺序添加新操作。