荆棘鸟

我颠覆整个世界只为扶正你的倒影
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

菜鸟的最爱 .NET经典代码汇总(二)

Posted on 2007-11-01 11:10  荆棘鸟  阅读(150)  评论(0)    收藏  举报
菜鸟的最爱 .NET经典代码汇总(二)

 程序的学习是一个循序渐进的过程,一些常用的或经典代码应该保存下来以便日后使用。本文就给出一些.net的经典代码,希望对大家有所帮助……

  11.获取" . "后面的字符


  i.ToString().Trim().Substring(i.ToString().Trim().LastIndexOf(".")+1).ToLower().Trim()

  12. 打开新的窗口并传送参数:

  传送参数:


  Button1.Attributes.Add("onclick","return confirm(’确认?’)");
     button.attributes.add("onclick","if(confirm(’are you sure...?’)){return true;}else{return false;}")

  接收参数:


  string a = Request.QueryString("id"); 
  string b = Request.QueryString("id1");

  13.为按钮添加对话框


  Button1.Attributes.Add("onclick","return confirm(’确认?’)"); 
  button.attributes.add("onclick","if(confirm(’are you sure...?’)){return true;}else{return false;}")

  14.删除表格选定记录


  int intEmpID = (int)MyDataGrid.DataKeys[e.Item.ItemIndex]; 
  string deleteCmd = "Delete from Employee where emp_id = " + intEmpID.ToString()

  15.删除表格记录警告


  private void DataGrid_ItemCreated(Object sender,DataGridItemEventArgs e) 
  { 
  switch(e.Item.ItemType) 
  { 
  case ListItemType.Item : 
  case ListItemType.AlternatingItem : 
  case ListItemType.EditItem: 
  TableCell myTableCell; 
  myTableCell = e.Item.Cells[14]; 
  LinkButton myDeleteButton ; 
  myDeleteButton = (LinkButton)myTableCell.Controls[0]; 
  myDeleteButton.Attributes.Add("onclick","return confirm(’您是否确定要删除这条信息’);"); 
  break; 
  default: 
  break; 
  } 
  }

  16.点击表格行链接另一页


  private void grdCustomer_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) 
  { 
  //点击表格打开 
  if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
  e.Item.Attributes.Add("onclick","window.open(’Default.aspx?id=" + e.Item.Cells[0].Text + "’);"); 
  }

  双击表格连接到另一页

  在itemDataBind事件中


  if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
  { 
  string orderItemID =e.item.cells[1].Text; 
  e.item.Attributes.Add("ondblclick", "location.href=’../ShippedGrid.aspx?id=" + orderItemID + "’"); 
  }

  双击表格打开新一页


  if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
  { 
  string orderItemID =e.item.cells[1].Text; 
  e.item.Attributes.Add("ondblclick", "open(’../ShippedGrid.aspx?id=" + orderItemID + "’)"); 
  }

  16.表格超连接列传递参数



  <asp:HyperLinkColumn Target="_blank" headertext="ID号" DataTextField="id" NavigateUrl="aaa.aspx?id=’
<%# DataBinder.Eval(Container.DataItem, "数据字段1")%>’ & name=’<%# DataBinder.Eval(Container.DataItem, "数据字段2")%>’ />

  17.表格点击改变颜色


if (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem) 
  { 
  e.Item.Attributes.Add("onclick","this.style.backgroundColor=’#99cc00’; 
  this.style.color=’buttontext’;this.style.cursor=’default’;"); 
  }

  写在DataGrid的_ItemDataBound里


if (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem) 
  { 
  e.Item.Attributes.Add("onmouseover","this.style.backgroundColor=’#99cc00’; 
  this.style.color=’buttontext’;this.style.cursor=’default’;"); 
  e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=’’;this.style.color=’’;"); 
  }

  18.关于日期格式

  日期格式设定


  DataFormatString="{0:yyyy-MM-dd}"

  我觉得应该在itembound事件中


e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd"))

  19.获取错误信息并到指定页面

  不要使用Response.Redirect,而应该使用Server.Transfer


  // in global.asax 
  protected void Application_Error(Object sender, EventArgs e) { 
  if (Server.GetLastError() is HttpUnhandledException) 
  Server.Transfer("MyErrorPage.aspx"); 
  //其余的非HttpUnhandledException异常交给ASP.NET自己处理就okay了 :) 
  }

  Redirect会导致post-back的产生从而丢失了错误信息,所以页面导向应该直接在服务器端执行,这样就可以在错误处理页面得到出错信息并进行相应的处理

  20.清空Cookie


  Cookie.Expires=[DateTime]; 
  Response.Cookies("UserName").Expires = 0