DataGridView选中行按从上到下或从下到上排序

/// <summary>
    /// 从上到下排列选择行
    /// </summary>
    /// <param name="dgv"></param>
    /// <returns></returns>
    public static List<DataGridViewRow> SortedUpDownSelectedRows(this DataGridView dgv)
    {
      List<DataGridViewRow> lstDgvr = new List<DataGridViewRow>();
      if (dgv.SelectedRows.Count == 0)
      {
        "请先选择属性定义行!".showAlert();
        return lstDgvr;
      }
      lstDgvr = dgv.SelectedRows.Cast<DataGridViewRow>().OrderBy(p => p.Index).Select(p => p).ToList(); ;
      return lstDgvr;
    }
    /// <summary>
    /// 从下到上排列选择行
    /// </summary>
    /// <param name="dgv"></param>
    /// <returns></returns>
    public static List<DataGridViewRow> SortedDownUpSelectedRows(this DataGridView dgv)
    {
      List<DataGridViewRow> lstDgvr = new List<DataGridViewRow>();
      if (dgv.SelectedRows.Count == 0)
      {
        "请先选择属性定义行!".showAlert();
        return lstDgvr;
      }
      lstDgvr = dgv.SelectedRows.Cast<DataGridViewRow>().OrderByDescending(p => p.Index).Select(p => p).ToList(); ;
      return lstDgvr;
    }

时间: 2024-10-14 17:25:05

DataGridView选中行按从上到下或从下到上排序的相关文章

C#——DataGridView选中行,在TextBox中显示选中行的内容

C#--DataGridView选中行,在TextBox中显示选中行的内容,在DataGridView的SelectionChanged实践中设置如下代码 private void dataGridView1_SelectionChanged(object sender, EventArgs e) { int index = dataGridView1.SelectedRows[0].Index; //获取选中行的行号 textBox1.Text = dataGridView1.Rows[ind

C# 获取DataGridView选中行的值

int index = DataGridView1.CurrentRow.Index;    //取得选中行的索引 txt_ProductId.Text = DataGridView1.Rows[index].Cells["Id"].Value;   //获取单元格列名为‘Id’的值

删除DataGridView选中行并更新数据库

前面写过一篇文章是DataGridView控件显示数据的,DataGridView在与数据库打交道时会经常出现,也很实用.通过DataGridView对数据库进行更改和查询都比较方便. 这里我们需要用DataGridView数据,并通过选中行将数据从数据库中删除. 其原理是把选中记录的主键提取出来,然后传给实体,通过实体给D层传值实现对数据库的修改. 下面是各层代码,供大家参考. 接口层代码都是D层的父类方法,这里只给出D层代码: <span style="background-color

Gridviewcontrol控件和DataGridView控件获得当前选中行

Gridviewcontrol控件在事件处理函数中取得当前行的某列的值: string buyPlanId = gridView1.GetRowCellValue(gridView1.FocusedRowHandle, "BuyPlanId").ToString(); int buyState = Convert.ToInt32(gridView1.GetRowCellValue(gridView1.FocusedRowHandle, "BuyState")); 控

DataGridView取消默认选中行

最近用Winform的DataGridView遇到不少问题,昨晚就碰到个默认选中行的问题.DataGridView在添加数据后会默认选中第 一个单元格或者第一行,我就想取消它的默认选中行.于是就在绑定数据的地方加了dataGridView1.ClearSelection()这句代码, 启动窗体之后发现第一行还是被选中了.后来上网搜索,看到很多人都遇到这个问题,解决方法无非就是那几句代码.可我试了几次都不管用,百思不得其解..       后来才知道得把它放到窗体的Load事件中,于是添加了for

浅谈Notepad++选中行操作+快捷键+使用技巧【超详解】

Notepad++选中行操作 快捷键 使用技巧 用Notepad++写代码,要是有一些重复的代码想copy一下,还真不容易,又得动用鼠标,巨烦人.... 有木有简单的方法呢,确实还是有的不过也不算太好用. 主要是应用键盘上的 Home 键 和 End 键. 鼠标光标停留在一行的某处,按 Home 键光标会跳到行首,按End键光标会跳到行尾. 鼠标光标停留在行尾,按 Shift + Home 选中一行. 鼠标光标停留在行首,按 Shift + End 选中一行. 鼠标光标停留在类中某处,按 Shi

extjs gridpanel 操作行 得到选中行

extjs gridpanel 操作行 得到选中行的列 在Extjs 3.2.0上适合 var model = grid.getSelectionModel(); model.selectAll();//选中所有行 model.selectFirstRow();//选中第一行 model.selectLastRow([flag]);//选中最后一行,flag为正的话保持当前已经选中的行数,不填则默认false model.selectNext();//选中下一行 model.selectPrev

CListCtrl设置选中行

原文链接: http://blog.163.com/[email protected]/blog/static/11650292013610103232600/ CListCtrl 设置选中状态 1. 使用CListCtrl的函数SetItemState(int nItem, UINT nState, UINT nMask); 如:m_list.SetItemState(index,LVNI_FOCUSED | LVIS_SELECTED, LVNI_FOCUSED | LVIS_SELECTE

JS获得ASP.NET(C#)页面上GridView选中行的信息

做web开发还是新手的我,之前为了得到Gridview中的值,是将其通过服务端控件先将Gridview中的数据保存到服务端,然后绑定当一个服务端的隐藏域,之后通过js读取隐藏域中的值,现在感觉这种方法很笨:虽然得到数据是很容易的仅仅是遍历一下Gridview,但是考虑的性能,我还是想用js来读取.现在可以得到我想要的数据了,为了方便以后和我一样的新手,现在简单记下,希望能够抛砖引玉,有待找到更好的解决办法.如果您有更好的想法请联系qq:643166601,我会及时记录更新. 1.准备数据库,我的