asp.net some commonly used data

Source: Internet
Author: User
Tags foreach date empty eval exception handling numeric time limit tostring
asp.net

1. Open a new window and transfer parameters:
Transfer parameters:
Response.Write ("<script>window.open" (' *.aspx?id= ') +this. dropdownlist1.selectindex+ "&id1=" +...+ "') </script>")

Receive parameters:
String a = Request.QueryString ("id");
String B = Request.QueryString ("Id1");


2. Add a dialog box for the button

BUTTON1.ATTRIBUTES.ADD ("onclick", "return confirm (' Confirm? ')");

Button.attributes.add ("onclick", "If" (Confirm (' Are you sure ...? ')) {return true;} Else{return false;} ")


3. Delete table Selected records

int intempid = (int) Mydatagrid.datakeys[e.item.itemindex];
String deletecmd = "DELETE from Employee where emp_id =" + intempid.tostring ()

4. Delete the form record warning
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" (' You are sure you want to delete this message '); ");
Break
Default
Break
}

}


5. Click on a table row link another page

private void Grdcustomer_itemdatabound (object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
Click on the form to open
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 + "');
}


Double-click a table to connect to another page
In the ItemDataBind event
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 +" "");
}
Double-click a table to open a new page
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 +" ")";
}
★ Special attention: "? id=" Can not be "? id ="

6. Table super Join column pass parameter
<asp:hyperlinkcolumn target= "_blank" headertext= "ID number" datatextfield= "id" navigateurl= "aaa.aspx?id=" <%# DataBinder.Eval (Container.DataItem, data field 1)%> ' & Name= ' <%# DataBinder.Eval (Container.DataItem, "data field 2")% > '/>


7. Click to change the color of the form
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 '; ");
}


Written in the _itemdatabound of the DataGrid.
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= '; ");
}

8. About date formats

Date format setting
Dataformatstring= "{0:YYYY-MM-DD}"

I think it should be in the Itembound incident.
e.items.cell["Your column"].text=datetime.parse (e.items.cell["Your column"].text. ToString ("Yyyy-mm-dd"))

9. Get the error message and go to the specified page
Instead of using Response.Redirect, you should use Server.Transfer
e.g
In Global.asax
protected void Application_Error (Object sender, EventArgs e) {
if (Server.GetLastError () is httpunhandledexception)
Server.Transfer ("myerrorpage.aspx");

The rest of the httpunhandledexception exception to ASP.net to deal with their own okay the:)
}

REDIRECT can cause Post-back to lose error messages, so page orientation should be done directly on the server side, so that you can get error messages on the error-handling page and handle them accordingly.


10. Empty Cookies
Cookie.expires=[datetime];
Response.Cookies ("UserName"). Expires = 0


11. Custom Exception Handling

Custom Exception Handling Classes
Using System;
Using System.Diagnostics;

Namespace Myappexception
{
<summary>
ApplicationException an inherited application exception handling class from the system exception class.
Automatically logs exception content to the Windows nt/2000 Application log
</summary>
public class AppException:System.ApplicationException
{
Public Appexception ()
{
if (applicationconfiguration.eventlogenabled)
LogEvent ("An unknown error occurred. ");
}

Public appexception (String message)
{
LogEvent (message);
}

Public appexception (String message,exception innerexception)
{
LogEvent (message);
if (innerexception!= null)
{
LogEvent (Innerexception.message);
}
}

Logging class
Using System;
Using System.Configuration;
Using System.Diagnostics;
Using System.IO;
Using System.Text;
Using System.Threading;

Namespace MyEventLog
{
<summary>
Event logging classes, providing event logging support
<remarks>
Defines 4 logging methods (Error, warning, info, trace)
</remarks>
</summary>
public class Applicationlog
{
<summary>
Log error messages to the Win2000/nt event log
<param name= "message" > Text information to be recorded </param>
</summary>
public static void Writeerror (String message)
{

Writelog (tracelevel.error, message);
}

<summary>
Log warning messages to the Win2000/nt event log
<param name= "message" > Text information to be recorded </param>
</summary>
public static void Writewarning (String message)
{

Writelog (tracelevel.warning, message);
}

<summary>
To log a hint to the Win2000/nt event log
<param name= "message" > Text information to be recorded </param>
</summary>
public static void Writeinfo (String message)
{
Writelog (tracelevel.info, message);
}
<summary>
Log trace information to the Win2000/nt event log
<param name= "message" > Text information to be recorded </param>
</summary>
public static void Writetrace (String message)
{

Writelog (tracelevel.verbose, message);
}

<summary>
Format text information that is logged to the event log
<param name= "Ex" > Exception object to be formatted </param>
<param name= "Catchinfo" > Exception information title string .</param>
<retvalue>
<para> format exception information string, including exception content and trace stack .</para>
</retvalue>
</summary>
public static string FormatException (Exception ex, String Catchinfo)
{
StringBuilder Strbuilder = new StringBuilder ();
if (Catchinfo!= String.Empty)
{
Strbuilder.append (Catchinfo). Append ("\ r \ n");
}
Strbuilder.append (ex. Message). Append ("\ r \ n"). Append (ex. StackTrace);
return strbuilder.tostring ();
}

<summary>
Actual Event Log Write method
<param Name= level > Levels to record information (Error,warning,info,trace) .</param>
<param name= "MessageText" > Text to be recorded .</param>
</summary>
private static void Writelog (TraceLevel level, String MessageText)
{

Try
{
EventLogEntryType Logentrytype;
Switch (level)
{
Case TRACELEVEL.ERROR:
Logentrytype = EventLogEntryType.Error;
Break
Case tracelevel.warning:
Logentrytype = eventlogentrytype.warning;
Break
Case Tracelevel.info:
Logentrytype = eventlogentrytype.information;
Break
Case Tracelevel.verbose:
Logentrytype = Eventlogentrytype.successaudit;
Break
Default
Logentrytype = Eventlogentrytype.successaudit;
Break
}

EventLog EventLog = new EventLog ("Application", Applicationconfiguration.eventlogmachinename, Applicationconfigura tion. Eventlogsourcename);
Writing to the event log
EventLog.WriteEntry (MessageText, Logentrytype);

}
Catch {}//ignore any exceptions
}
}//class Applicationlog
}


12.Panel horizontal scrolling, vertical automatic expansion
<asp:panel style= "Overflow-x:scroll;overflow-y:auto;" ></asp:panel>


13. Return to Tab
<script language= "javascript" for= "document" event= "onkeydown" >
if (event.keycode==13 && event.srcelement.type!= ' button ' && event.srcelement.type!= ' Submit ' & & event.srcelement.type!= ' reset ' && event.srcelement.type!= ' && event.srcelement.type!= ' TextArea ');
event.keycode=9;
</script>

Http://dotnet.aspx.cc/exam/enter2tab.aspx


14.DataGrid Super Connection column
datanavigateurlfield= "field name" Datanavigateurlformatstring= "http://xx/inc/delete.aspx?id={0}"


15.DataGrid line changes color with mouse
private void Dgzf_itemdatabound (object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (E.item.itemtype!=listitemtype.header)
{
E.item.attributes.add ("onmouseout", "this.style.backgroundcolor=\" "+e.item.style[" Background-color "]+" "");
E.item.attributes.add ("onmouseover", "this.style.backgroundcolor=\" "+" #EFF3F7 "+" ");
}

}


16. Template columns
<asp:templatecolumn visible= "False" sortexpression= "demo" headertext= "ID" >
<ITEMTEMPLATE>
<asp:label text= ' <%# databinder.eval (Container.DataItem, "ArticleID")%> ' runat= ' server ' width= ' 80% ' id= ' Lblcolumn "/>
</ITEMTEMPLATE>
</ASP:TEMPLATECOLUMN>


<asp:templatecolumn headertext= "Checked" >
<ITEMTEMPLATE>
<asp:checkbox id= "Chkexport" runat= "Server"/>
</ITEMTEMPLATE>
<EDITITEMTEMPLATE>
<asp:checkbox id= "Chkexporton" runat= "Server" enabled= "true"/>
</EDITITEMTEMPLATE>
</ASP:TEMPLATECOLUMN>

Background code

protected void Checkall_checkedchanged (object sender, System.EventArgs e)
{
Change the selection of columns to achieve either a full or a full selection.
CheckBox Chkexport;
if (checkall.checked)
{
foreach (DataGridItem odatagriditem in Mydatagrid.items)
{
Chkexport = (checkbox) Odatagriditem.findcontrol ("Chkexport");
Chkexport.checked = true;
}
}
Else
{
foreach (DataGridItem odatagriditem in Mydatagrid.items)
{
Chkexport = (checkbox) Odatagriditem.findcontrol ("Chkexport");
chkexport.checked = false;
}
}
}

17. Number format
"<% #Container. DataItem (" price ")%> result is 500.0000, how to format into 500.00?"

<% #Container. DataItem ("Price", "{0:¥#,# #0.}")%>

int i=123456;
String s=i.tostring ("###,###.00");

18. Date format

aspx page: <%# databinder.eval (Container.DataItem, "company_ureg_date")%>
Displayed as: 2004-8-11 19:44:28
I only want: 2004-8-11 "

<%# DataBinder.Eval (Container.DataItem, "company_ureg_date", "{0:yyyy-m-d}")%>

How should it be changed?


"Format Date"
Take it out, it's usually object.
((DateTime) objectfromdb). ToString ("Yyyy-mm-dd");


"Validation Expression for date"
A. The following correct input format: [2004-2-29], [2004-02-29 10:29:39 PM], [2004/12/31]

^ ((\d{2} ([02468][048]) | ( [13579] [26])) [\-\/\s]? (((0? [13578]) | (1[02]) [\-\/\s]? ((0?) [1-9]) | ([1-2][0-9]) | (3[01])) | ((0? [469]) | (11)) [\-\/\s]? ((0?) [1-9]) | ([1-2][0-9]) | (30)) | (0?2[\-\/\s]? ((0?) [1-9]) | ([1-2][0-9])) | (\d{2} ([02468][1235679]) | ( [13579] [01345789])) [\-\/\s]? (((0? [13578]) | (1[02]) [\-\/\s]? ((0?) [1-9]) | ([1-2][0-9]) | (3[01])) | ((0? [469]) | (11)) [\-\/\s]? ((0?) [1-9]) | ([1-2][0-9]) | (30)) | (0?2[\-\/\s]? ((0?) [1-9]) | (1[0-9]) | (2[0-8])))) (\s ((0?[ 1-9]) | (1[0-2]) \:([0-5][0-9]) ((\s) | ( \:([0-5][0-9]) \s)) ([am| pm|am|pm]{2,2}))? $

B. The following correct input format: [0001-12-31], [9999 09 30], [2002/03/03]

^\d{4}[\-\/\s]? ((((0[13578]) | (1[02]) [\-\/\s]? (([0-2][0-9]) | (3[01])) | (((0[469]) | (11)) [\-\/\s]? (([0-2][0-9]) | (30)) | (02[\-\/\s]? [0-2] [0-9])) $


"Case Conversion"

Httputility.htmlencode (string);
Httputility.htmldecode (String)

19. How to set global variables
In Global.asax

In the Application_Start () event

Add application[property name] = XXX;

Is your global variable.

20. How to make a connection to the hyperlinkcolumn generated, click on the connection, open a new window?

HyperLinkColumn has a property target that sets the value of the device to "_blank". (target= "_blank")

"Aspnetmenu" click menu item to pop up a new window
Add urltarget= "_blank" to the menu item in your Menudata.xml file
Such as:
<?xml version= "1.0" encoding= "GB2312"?>
<menudata imagesbaseurl= "images/" >
<MenuGroup>
<menuitem label= "Internal reference information" url= "infomation.aspx" >
<menugroup id= "BBC" >
<menuitem label= "Bulletin Information" url= "infomation.aspx" urltarget= "_blank" lefticon= "file.gif"/>
<menuitem label= "Preparation of Information bulletin" url= "newinfo.aspx" lefticon= "File.gif"/>
......
It's best to upgrade your Aspnetmenu to version 1.2.

21. Commissioned Discussion
http://community.csdn.net/Expert/topic/2651/2651579.xml?temp=.7183191
Http://dev.csdn.net/develop/article/22/22951.shtm

22. Reading DataGrid control TextBox value

foreach (DataGrid dgi in Yourdatagrid.items)
{
TextBox TB = (textbox) Dgi. FindControl ("Yourtextboxid");
Tb. Text .....
}

23. In the DataGrid, 3 template columns contain a textbox of Dg_shuliang (quantity) Dg_danjian (unit price) Dg_jine (amount) respectively in 5.6.7, requiring that the amount be automatically calculated at the time of input quantity and unit price that is: quantity * unit Price = The amount also requires the input time limit to the numeric type. How do I implement this feature with client script?

Shi
<asp:templatecolumn headertext= "Quantity" >
<ItemTemplate>
<asp:textbox id= "Shuliang" runat= ' text= ' <%# databinder.eval (Container.DataItem, "DG_ShuLiang")%> '
Onkeyup= "javascript:docal ()"
/>

<asp:regularexpressionvalidator id= "revs" runat= "controltovalidate=" Shuliang "errormessage=" must be Integer "validationexpression=" ^\d+$ "/>
</ItemTemplate>
</asp:TemplateColumn>

<asp:templatecolumn headertext= "Unit Price" >
<ItemTemplate>
<asp:textbox id= "Danjian" runat= ' text= ' <%# databinder.eval (Container.DataItem, "DG_DanJian")%> '
Onkeyup= "javascript:docal ()"
/>

<asp:regularexpressionvalidator id= "revS2" runat= "controltovalidate=" Danjian "errormessage=" must be Numeric "validationexpression=" ^\d+ (\.\d*) $ "/>

</ItemTemplate>
</asp:TemplateColumn>

<asp:templatecolumn headertext= "Amount" >
<ItemTemplate>
<asp:textbox id= "Jine" runat= ' text= ' <%# databinder.eval (Container.DataItem, "Dg_jine")%> '/>
</ItemTemplate>
</asp:TemplateColumn>

<script language= "JavaScript" >
function docal ()
{
var e = event.srcelement;
var row = E.parentnode.parentnode;
var txts = row.all.tags ("INPUT");
if (!txts.length | | Txts.length < 3)
Return

var q = txts[txts.length-3].value;
var p = txts[txts.length-2].value;

if (isNaN (q) | | isNaN (P))
Return

Q = parseint (q);
p = parsefloat (p);

Txts[txts.length-1].value = (Q * p). toFixed (2);
}
</script>


24.datagrid Select to compare the rows below, why always refresh, and then scroll to the top, just select the line because the screen relationship will not see the
Page_Load
Page.smartnavigation=true

25. Modify the data in the DataGrid, when you click on the edit key, the data appears in the text box, how to control the size of the text box?

private void Datagrid1_itemdatabound (obj Sender,datagriditemeventargs e)
{
for (int i=0;i<e.item.cells.count-1;i++)
if (E.item.itemtype==listitemtype.edittype)
{
E.item.cells[i]. Attributes.Add ("Width", "80px")

}
}


26. dialog box
private static string scriptbegin = "<script language=\" javascript\ ">";
private static string scriptend = "</script>";

public static void Confirmmessagebox (String pagetarget,string Content)
{

String Confirmcontent= "var retvalue=window.confirm (' +content+" '); " + "if (retvalue) {window.location= '" +pagetarget+ "';}";

Confirmcontent=scriptbegin + confirmcontent + scriptend;

Page parameterpage = (page) System.Web.HttpContext.Current.Handler;
Parameterpage.registerstartupscript ("Confirm", confirmcontent);
Response.Write (Strscript);

}




Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.