C#新建DataColumn类时Type类型参数的生成方式2014-10-13 csdn博客 微wx笑DataColumn类的几个需要Type类型参数的构造函数如下:
//// 摘要:// 使用指定列名称和数据类型初始化 System.Data.DataColumn 类的新实例。//// 参数:// columnName:// 一个字符串,它表示要创建的列的名称。如果设置为 null 或空字符串 (""),则当添加到列集合中时,将指定一个默认名称。//// dataType:// 支持的 System.Data.DataColumn.DataType。//// 异常:// System.ArgumentNullException:// 未指定任何 dataType。public DataColumn(string columnName, Type dataType);//// 摘要:// 使用指定的名称、数据类型和表达式初始化 System.Data.DataColumn 类的新实例。//// 参数:// columnName:// 一个字符串,它表示要创建的列的名称。如果设置为 null 或空字符串 (""),则当添加到列集合中时,将指定一个默认名称。//// dataType:// 支持的 System.Data.DataColumn.DataType。//// expr:// 用于创建该列的表达式。有关更多信息,请参见 System.Data.DataColumn.Expression 属性。//// 异常:// System.ArgumentNullException:// 未指定任何 dataType。public DataColumn(string columnName, Type dataType, string expr);//// 摘要:// 使用指定名称、数据类型、表达式和确定列是否为属性的值,初始化 System.Data.DataColumn 类的新实例。//// 参数:// columnName:// 一个字符串,它表示要创建的列的名称。如果设置为 null 或空字符串 (""),则当添加到列集合中时,将指定一个默认名称。//// dataType:// 支持的 System.Data.DataColumn.DataType。//// expr://URL:http://www.bianceng.cn/Programming/csharp/201410/45772.htm// 用于创建该列的表达式。有关更多信息,请参见 System.Data.DataColumn.Expression 属性。//// type:// System.Data.MappingType 值之一。//// 异常:// System.ArgumentNullException:// 未指定任何 dataType。public DataColumn(string columnName, Type dataType, string expr, MappingType type);
C#的几个与类型Type有关的几个语句1、typeoftypeof是个运算符,typeof(类型)。例如typeof(bool)、typeof(int)、typeof(System.Windows.Forms.TextBox)2、Type.GetType(类型名)。这个类型名是string型,加引号的。3、Object.GetType()。Object类的成员,c#的类对象都有此方法。上面3个都返回System.Type。具体使用示例:
private void Form1_Load(object sender, EventArgs e){try{dt = new DataTable();dt.Columns.Add(new DataColumn("one", System.Type.GetType("System.Double"))); //System.Type.GetType(TypeCode.Double.ToString())这种方式不能用dt.Columns.Add(new DataColumn("two", System.Type.GetType("System.Double")));dt.Columns.Add(new DataColumn("three", typeof(Double)));dt.Columns.Add(new DataColumn("four", (1D).GetType()));Random rnd = new Random();for (int i = 0; i < 10; i++){dt.Rows.Add(new object[] { (Double)rnd.Next(1, 234923745), (Double)rnd.Next(1, 234923745), (Double)rnd.Next(1, 234923745), (Double)rnd.Next(1, 234923745) });}dt.DefaultView.Sort = "one ASC,two ASC";dataGridView1.DataSource = dt.DefaultView;}catch (System.Exception ex){MessageBox.Show(ex.Message);}}
源码下载:c#DataGridView数据绑定示例 多列混合排序
http://download.csdn.net/detail/testcs_dn/7680227