技术开发 频道

.NET常用功能及代码的总结与收藏

  28.自定义分页代码:

  先定义变量 :public static int pageCount; //总页面数
  public static int curPageIndex=1; //当前页面

  下一页: 

if(DataGrid1.CurrentPageIndex < (DataGrid1.PageCount - 1))
{
DataGrid1.CurrentPageIndex
+= 1;
curPageIndex
+=1;
}
bind();
// DataGrid1数据绑定函数

  上一页: 

if(DataGrid1.CurrentPageIndex >0)
{
DataGrid1.CurrentPageIndex
+= 1;
curPageIndex
-=1;
}
bind();
// DataGrid1数据绑定函数

  直接页面跳转: 

int a=int.Parse(JumpPage.Value.Trim());//JumpPage.Value.Trim()为跳转值
if(a<DataGrid1.PageCount)
{
this.DataGrid1.CurrentPageIndex=a;
}
bind();

  29.DataGrid使用:

  3.1添加删除确认: 

private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
foreach(DataGridItem di in this.DataGrid1.Items)
{
if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem)
{
((LinkButton)di.Cells[
8].Controls[0]).Attributes.Add("onclick","return confirm('确认删除此项吗?');");
}
}
}

  3.2样式交替: 

ListItemType itemType = e.Item.ItemType;
if (itemType == ListItemType.Item )
{
e.Item.Attributes[
"onmouseout"] = "javascript:this.style.backgroundColor='#FFFFFF';";
e.Item.Attributes[
"onmouseover"] = "javascript:this.style.backgroundColor='#d9ece1';cursor='hand';" ;
}
else if( itemType == ListItemType.AlternatingItem)
{
e.Item.Attributes[
"onmouseout"] = "javascript:this.style.backgroundColor='#a0d7c4';";
e.Item.Attributes[
"onmouseover"] = "javascript:this.style.backgroundColor='#d9ece1';cursor='hand';" ;
}

  3.3添加一个编号列:

DataTable dt= c.ExecuteRtnTableForAccess(sqltxt); //执行sql返回的DataTable
DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String"));
for(int i=0;i<dt.Rows.Count;i++)
{
dt.Rows[i][
"number"]=(i+1).ToString();
}
DataGrid1.DataSource
=dt;
DataGrid1.DataBind();

  3.4 DataGrid1中添加一个CheckBox,页面中添加一个全选框 

private void CheckBox2_CheckedChanged(object sender, System.EventArgs e)
{
foreach(DataGridItem thisitem in DataGrid1.Items)
{
((CheckBox)thisitem.Cells[
0].Controls[1]).Checked=CheckBox2.Checked;
}
}

  将当前页面中DataGrid1显示的数据全部删除

foreach(DataGridItem thisitem in DataGrid1.Items)
{
if(((CheckBox)thisitem.Cells[0].Controls[1]).Checked)
{
string strloginid= DataGrid1.DataKeys[thisitem.ItemIndex].ToString();
Del (strloginid);
//删除函数
}
}

  30.当文件在不同目录下,需要获取数据库连接字符串(如果连接字符串放在Web.config,然后在Global.asax中初始化)

  在Application_Start中添加以下代码:

Application["ConnStr"]=this.Context.Request.PhysicalApplicationPath+ConfigurationSettings.AppSettings["ConnStr"].ToString();

    31. 变量.ToString() 
  字符型转换 转为字符串
12345.ToString("n"); //生成 12,345.00
12345.ToString("C"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.234500e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039 (16进制)
12345.ToString("p"); //生成 1,234,500.00%

  32.变量.Substring(参数1,参数2); 
  截取字串的一部分,参数1为左起始位数,参数2为截取几位。
  如:string s1 = str.Substring(0,2);

  33.在自己的网站上登陆其他网站:(如果你的页面是通过嵌套方式的话,因为一个页面只能有一个FORM,这时可以导向另外一个页面再提交登陆信息)

<SCRIPT language="javascript"
<!
--
 
function gook(pws)
 {
  frm.submit();
 }
//--
/SCRIPT> <body leftMargin="0" topMargin="0" onload="javascript:gook()" marginwidth="0" marginheight="0"
<form name
="frm" action=" http://220.194.55.68:6080/login.php?retid=7259 " method="post"
<tr>
<td>
<input id
="f_user" type="hidden" size="1" name="f_user" runat="server"
<input id
="f_domain" type="hidden" size="1" name="f_domain" runat="server"
<input class
="box" id="f_pass" type="hidden" size="1" name="pwshow" runat="server"
<INPUT id
="lng" type="hidden" maxLength="20" size="1" value="5" name="lng"
<INPUT id
="tem" type="hidden" size="1" value="2" name="tem"
/td>
/tr>
/form>

  文本框的名称必须是你要登陆的网页上的名称,如果源码不行可以用vsniffer 看看。
  
  下面是获取用户输入的登陆信息的代码:

string name;
name
=Request.QueryString["EmailName"];
try
{
 
int a=name.IndexOf("@",0,name.Length);
 f_user.Value
=name.Substring(0,a);
 f_domain.Value
=name.Substring(a+1,name.Length-(a+1));
 f_pass.Value
=Request.QueryString["Psw"];
}
catch
{
 Script.Alert(
"错误的邮箱!");
 Server.Transfer(
"index.aspx");
}
0
相关文章