小弟在vs中调式了下,将gridview显示数据库表中一列数据,OK.
不过我想实现身份证后5-2位用xxxx来代替原来数字
在text中 string sSql = "select * from pass ";
sSql = Regex.Replace(sSql, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
TextBox1.Text = sSql.ToString();是可行的,不过换到gridview中,如何操作啊,代码如下在page_load中
//先连接数据库
SqlConnection con = new SqlConnection();
con.ConnectionString = @"server=xxxx;database=xxxx;user id=xxxx;password=xxxx;";
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
//选取数据库表内容
cmd.CommandText = "select emp_id from id ";//使用dataadapter,设置dataset
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
sda.Fill(ds, "id");
con.Close(); DataTable dt = ds.Tables["id"];
//gridview设置datasource
GridView1.DataSource = dt;
GridView1.DataBind();以上代码成功导入sql数据到gridview中,
我想实现开头的功能,便将橙色语句改成
string sSql = "select emp_id from id ";
sSql = Regex.Replace(sSql, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
cmd.CommandText = sSql.ToString();身份证还是原样显示,
求大神指点,gridview如何replace,我已经using text.regularexpressions了。 sSql = Regex.Replace(sSql, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
此代码在text中可以让后2-5位以xxxx显示.
不过我想实现身份证后5-2位用xxxx来代替原来数字
在text中 string sSql = "select * from pass ";
sSql = Regex.Replace(sSql, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
TextBox1.Text = sSql.ToString();是可行的,不过换到gridview中,如何操作啊,代码如下在page_load中
//先连接数据库
SqlConnection con = new SqlConnection();
con.ConnectionString = @"server=xxxx;database=xxxx;user id=xxxx;password=xxxx;";
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
//选取数据库表内容
cmd.CommandText = "select emp_id from id ";//使用dataadapter,设置dataset
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
sda.Fill(ds, "id");
con.Close(); DataTable dt = ds.Tables["id"];
//gridview设置datasource
GridView1.DataSource = dt;
GridView1.DataBind();以上代码成功导入sql数据到gridview中,
我想实现开头的功能,便将橙色语句改成
string sSql = "select emp_id from id ";
sSql = Regex.Replace(sSql, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
cmd.CommandText = sSql.ToString();身份证还是原样显示,
求大神指点,gridview如何replace,我已经using text.regularexpressions了。 sSql = Regex.Replace(sSql, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
此代码在text中可以让后2-5位以xxxx显示.
解决方案 »
- 下拉菜单控件
- 求SqlConnection,SqlCommand,SqlDataReader和SqlParameter的用法总结
- 如何获取验证码的图片 对有验证码的网页进行Winform登陆?
- 讨论:用GUID和INT结合,做主键,是否合理???? 效率怎样???
- 高分求助:oracle数据库中blob字段的问题
- 用通俗的语言讲一下托管和非托管。
- 为什么C#定义com组件的时候,不需要一个idl文件?
- 【菜鸟请教】关于nuget使用的一个问题
- 当“C#必败"的时候,请去http://www.redfocus.net/forums讨论你的问题。
- 查询ACCESS数据表的问题
- asp.net请求java接口时,报“An error was discovered processing the <wsse:Security> header
- ODBC是不是不能采用多线程编程?
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[身份证所在列].Text = Regex.Replace(e.Row.Cells[身份证所在列].Text, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
}
}
这位大哥, e.Row.Cells[身份证所在列].Text 身份证所在列怎么写啊,row.cells具体怎么弄?
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[0].Text = Regex.Replace(e.Row.Cells[0].Text, @"^(\d+)\d{4}([Xx0-9])$", "$1XXXX$2");
}
} 改成gridview id了 是GridView1,关键是不报错..不知道错在哪...是不是 databound有问题?
RowDataBound事件 在创建gridView控件时,必须先为GridView的每一行创建一个GridViewRow对象,创建每一行时,将引发一个RowCreated事件;当行创建完毕,每一行GridViewRow就要绑定数据源中的数据,当绑定完成后,将引发RowDataBound事件。如果说我们可以利用RowCreated事件来控制每一行绑定的控件,那么我们同样可以利用RowDataBound事件来控制每一行绑定的数据先要在事件项中创建一个rowcreated事件,就是这个GridView1_RowDataBound,然后才有rowdatabound事件。谢谢大老虎了。结贴了