1. open a new window and send parameters:
Transfer Parameters:
Response. Write ("<SCRIPT> window. Open ('*. aspx? Id = "+ this. dropdownlist1.selectindex +" & id1 = "+... +" ') </SCRIPT> ")
Receiving parameters:
String A = request. querystring ("ID ");
String B = request. querystring ("id1 ");
2. Add dialog box for button
Button1.attributes. Add ("onclick", "Return confirm ('OK? ')");
Button. Attributes. Add ("onclick", "If (confirm ('Are you sure ...? ') {Return true;} else {return false ;}")
3. Delete selected table records
Int intempid = (INT) mydatagrid. datakeys [E. Item. itemindex];
String deletecmd = "delete from employee where emp_id =" + intempid. tostring ()
4. Delete table 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 ('Are you sure you want to delete this information ');");
Break;
Default:
Break;
}
}
5. Click the table row link to another page.
Private void grdcustomer_itemdatabound (Object sender, system. Web. UI. webcontrols. datagriditemeventargs E)
{
// Click Open Table
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 + "')");
}
6. Table hyperjoin column Transfer Parameters
<Asp: hyperlinkcolumn target = "_ blank" headertext = "ID" 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 table.
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 _ 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 Format
Date Format setting
Dataformatstring = "{0: yyyy-mm-dd }"
I think it should be in the itembound event
E. items. cell ["your column"]. TEXT = datetime. parse (E. items. cell ["your column"]. text. tostring ("yyyy-mm-dd "))
9. Get error information 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 ");
// Other non-httpunhandledexception exceptions are handed over to ASP. NET for processing and okay.
}
Redirect will lead to post-back loss of error information, so the page orientation should be executed directly on the server side, so that the error information can be obtained on the error handling page and processed accordingly
10. Clear cookies
Cookie. expires = [datetime];
Response. Cookies ("username"). expires = 0
11. Custom Exception Handling
// Custom exception handling class
Using system;
Using system. diagnostics;
Namespace myappexception
{
/// <Summary>
/// Application exception handling class inherited from the system exception class applicationexception.
/// Automatically record the exception content to the application logs of Windows NT/2000
/// </Summary>
Public class appexception: system. applicationexception
{
Public appexception ()
{
If (applicationconfiguration. eventlogenabled) logevent ("an unknown error occurs. ");
}
Public appexception (string message)
{
Logevent (Message );
}
Public appexception (string message, exception innerexception)
{
Logevent (Message );
If (innerexception! = NULL)
{
Logevent (innerexception. Message );
}
}
// Log record type
Using system;
Using system. configuration;
Using system. diagnostics;
Using system. IO;
Using system. text;
Using system. Threading;
Namespace myeventlog
{
/// <Summary>
/// Event logging class, supporting event logging
/// <Remarks>
/// Defines four logging methods (error, warning, info, trace)
/// </Remarks>
/// </Summary>
Public class applicationlog
{
/// <Summary>
/// Record the error information 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>
/// Record the warning information 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>
/// Record the prompt information 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>
/// Record tracking information to Win2000/NT Event Logs
/// <Param name = "message"> text information to be recorded </param>
/// </Summary>
Public static void writetrace (string message)
{
Writelog (tracelevel. verbose, message );
}
/// <Summary>
/// Format the text information recorded in the event log
/// <Param name = "ex"> the exception object to be formatted </param>
/// <Param name = "catchinfo"> exception message title string. </param>
/// <Retvalue>
/// <Para> formatted exception information string, including the 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 Writing Method
/// <Param name = "level"> information level (error, warning, info, trace) to be recorded. </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 = new EventLog ("application", applicationconfiguration. eventlogmachinename, applicationconfiguration. eventlogsourcename );
// Write Event Logs
EventLog. writeentry (messagetext, logentrytype );
}
Catch {} // ignore any exceptions
}
} // Class applicationlog
}
12. horizontal panel scrolling and vertical auto Scaling
<Asp: Panel style = "overflow-X: Scroll; overflow-Y: auto;"> </ASP: Panel>
13. Press enter to convert 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! = 'Textea ');
Event. keycode = 9;
</SCRIPT>
Onkeydown = "If (event. keycode = 13) event. keycode = 9"
14. DataGrid super join Column
Datanavigateurlfield = "field name" datanavigateurlformatstring = "http: // XX/INC/Delete. aspx? Id = {0 }"
15. The row of the DataGrid changes color with the 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 Column
<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 = "selected">
<Headerstyle wrap = "false" horizontalalign = "center"> <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 column selection to select all or all columns.
Checkbox chkexport;
If (checkall. Checked)
{
Foreach (maid in mydatagrid. Items)
{
Chkexport = (checkbox) odatagriditem. findcontrol ("chkexport ");
Chkexport. Checked = true;
}
}
Else
{
Foreach (maid in mydatagrid. Items)
{
Chkexport = (checkbox) odatagriditem. findcontrol ("chkexport ");
Chkexport. Checked = false;
}
}
}
17. digit formatting
The result of <% # container. dataitem ("price") %> is 500.0000. How to format it to 500.00 ?]
<% # Container. dataitem ("price", "{0: ¥ #,## 0.00}") %>
Int I = 123456;
String S = I. tostring ("###,##. 00 ");