• DataTable.Select


    转载请注明出处:http://www.cnblogs.com/havedream/p/4453297.html

     

    方法:DataTable.Select

    作用:获取 DataRow 对象的数组。
    重载:
    1. Select()------------------------------------------------获取所有 DataRow 对象的数组。 
    2. Select(String)-------------------------------------------获取按与筛选条件相匹配的所有 DataRow 对象的数组。
    3. Select(String, String)-------------------------------------获取按照指定的排序顺序且与筛选条件相匹配的所有 DataRow 对象的数组。
    4. Select(String, String, DataViewRowState)------------------获取与排序顺序中的筛选器以及指定的状态相匹配的所有 DataRow 对象的数组。
     为了更好的说明如何使用该方法,用下面的示例来说明:
    注:最后会有完成的代码,这里只是贴出来了部分代码
    1、新建Datatable表,绑定主界面datagridview
            /// <summary>
            /// 初始化Table表和界面
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void button1_Click(object sender, EventArgs e)
            {
                tblDatas = new DataTable("Datas");
                DataColumn dc = null;
                dc = tblDatas.Columns.Add("ID", Type.GetType("System.Int32"));
                dc.AutoIncrement = true;//自动增加
                dc.AutoIncrementSeed = 1;//起始为1
                dc.AutoIncrementStep = 1;//步长为1
                dc.AllowDBNull = false;//
    
                dc = tblDatas.Columns.Add("名称", Type.GetType("System.String"));
                dc = tblDatas.Columns.Add("版本", Type.GetType("System.String"));
                dc = tblDatas.Columns.Add("描述", Type.GetType("System.String"));
    
                DataRow newRow;
                newRow = tblDatas.NewRow();
                newRow["名称"] = "天龙八部OL";
                newRow["版本"] = "3.0";
                newRow["描述"] = "几万块钱的装备基本看不见,被秒的节奏";
                tblDatas.Rows.Add(newRow);
    
                newRow = tblDatas.NewRow();
                newRow["名称"] = "神仙道";
                newRow["版本"] = "4.0";
                newRow["描述"] = "页游,没事玩一下,别认真,坑太多";
                tblDatas.Rows.Add(newRow);
    
                newRow = tblDatas.NewRow();
                newRow["名称"] = "实况2013";
                newRow["版本"] = "1.0";
                newRow["描述"] = "经典游戏,不过这个版本直塞是个bug";
                tblDatas.Rows.Add(newRow);
    
                newRow = tblDatas.NewRow();
                newRow["名称"] = "真.三国无双5";
                newRow["版本"] = "1.0";
                newRow["描述"] = "经典游戏,没事的时候还会玩玩,习惯了旧版本就不想玩新的了";
                tblDatas.Rows.Add(newRow);
    
                dataGridView1.DataSource = tblDatas;
                dataGridView1.Columns[0].Width = 50;
                dataGridView1.Columns[1].Width = 150;
                dataGridView1.Columns[2].Width = 50;
                //for (int i = 0; i < dataGridView1.Columns.Count; i++)
                //{
                //    dataGridView1.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
                //}
            }

    运行之后结果如下:

     
    2、DataTable.Select()方法
            private void button2_Click(object sender, EventArgs e)
            {
                DataRow[] rows = tblDatas.Select();
    
                for (int i = 0; i < rows.Length; i++)
                {
                    listBox1.Items.Insert(0, "DataTable.Select()--------------" + rows[i]["名称"]);
                }
            }

    运行结果:

    3、DataTable.Select(版本='1.0')

            private void button3_Click(object sender, EventArgs e)
            {
                DataRow[] rows = tblDatas.Select("版本='1.0'");
    
                for (int i = 0; i < rows.Length; i++)
                {
                    listBox1.Items.Insert(0, "DataTable.Select(版本='1.0')--------------" + rows[i]["名称"]);
                }
            }


    运行结果:

    4、DataTable.Select(版本='1.0', ID DESC)

            private void button4_Click(object sender, EventArgs e)
            {
                DataRow[] rows = tblDatas.Select("版本='1.0'"," ID DESC");
    
                for (int i = 0; i < rows.Length; i++)
                {
                    listBox1.Items.Insert(0, "DataTable.Select(版本='1.0', ID DESC)--------------" + rows[i]["名称"]);
                }
            }

    运行结果:

    5、DataTable.Select(版本='1.0', ID DESC, DataViewRowState.Added)

            private void button5_Click(object sender, EventArgs e)
            {
                DataRow[] rows = tblDatas.Select("版本='1.0'", " ID DESC", DataViewRowState.Added);
    
                for (int i = 0; i < rows.Length; i++)
                {
                    listBox1.Items.Insert(0, "DataTable.Select(版本='1.0', ID DESC, DataViewRowState.Added)--------------" + rows[i]["名称"]);
                }
            }

    运行结果:

    对于DataViewRowState,MSDN给出的成员类型如下:

    可以根据自己的需要进行筛选。

  • 相关阅读:
    SOA概念误解实施要点
    Visual Studio 2008 和 .NET Framework 3.5 Service Pack 1 Beta 发布
    【翻译】使用LINQ来简化编程的7个技巧
    我对SOA的认识以及心得
    《SQL Server 2005范例代码查询辞典》出版
    Security Tutorials系列文章以及AJAX系列文章
    代朋友发招聘信息,C++程序员
    二叉树相关算法
    最近项目的一些心得(纯贴代码)
    大型互联网网站架构心得之一:分
  • 原文地址:https://www.cnblogs.com/havedream/p/4453297.html
Copyright © 2020-2023  润新知