标签归档:c#技巧

C#语言中如何限定一个文本框(TextBox)只可输入时间(00:00)的格式信息呢?


摘要:
下文讲述c#语言中限制一个文本框只可输入时间信息的方法分享,如下所示:


实现思路:
通过正则表达式验证输入的信息为时间格式

private void txtTime_TextChanged(object sender, EventArgs e)
{
	if (!System.Text.RegularExpressions.Regex.IsMatch(txtTime.Text,
              "^[0-2][0-9]:[0-5][0-9]$"
            ))
	{
		txtTime.Text = "00:00";
	}
}

c# Datatable如何筛选字段的唯一值(类似distinct的功能)呢?


摘要:
下文讲述C#中对DataTable执行distinct操作,具体操作方法如下所示:


实现思路:
1.将DataTable转换为DataView
2.使用DataView的ToTable方法将其转换为唯一值

例:

        
        DataTable tb= ...;  //原始数据表

        DataView dataView = dataTable.DefaultView; //转换为DataView

        DataTable tbNew = dataView.ToTable("tableName",true,new string[]{ "Field1","Field2","Field3",...})
        /*
		 ToTable参数说明:
		   1.“tableName”新数据表名称
		   2.true:代表对后面的字段执行distinct操作
		   3.new string[]{"Field1","Field2","Field3",...} 返回列  "Field1","Field2","Field3"
		 ToTable返回值说明:
		   一个全新的DataTable,包含列 "Field1","Field2","Field3",... 和进行distinct 操作的数据
		*/
 

c# 如何将DatTable.Select查询结果转换为新DataTable呢?


摘要:
下文讲述c#中,将DataTable.Select 查询结果转换为DataTable的方法分享,如下所示:

在C#开发语言中,DataTable.Select查询结果返回的为一个DataRow数组,那么我们该如何将查询结果转换为一个新的
DataTable呢?下文将通过示例的方式讲述其转换方法,如下所示:

   DataTable tb = new DataTable();
    /*
    原DataTable获取
   */ 
    DataTable newTb = new DataTable();  //转换后DataTable
   
   newTb = tb.Clone(); //复制表结构(约束信息都会复制过来)无数据 

   
   DataRow[] rows = tb.Select(conditions); //conditions 从tb中过滤数据,并返回数据行

   foreach (DataRow row in rows)  //循环数据行,插入至newTb中
   { 
     newTb.Rows.Add(row.ItemArray); 
   }