1. เปิดหน้าต่างใหม่และส่งพารามิเตอร์:
ส่งพารามิเตอร์:
response.write("<script>window.open
('*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="++"')</ script>")
รับพารามิเตอร์:
string a = Request.QueryString("id");
string b = Request.QueryString("id1");
2. เพิ่มกล่องโต้ตอบให้กับปุ่ม
Button1.Attributes.Add("onclick", "return cancel('confirm?')");
button.attributes.add("onclick","if(confirm('are you Sure?'))
{return true;}else{return false;}")
3. ลบแบบฟอร์มที่เลือกบันทึก
int intEmpID = (int) MyDataGrid.DataKeys [e.Item.ItemIndex];
string DeleteCmd = "DELETE จากพนักงานโดยที่ emp_id = " + intEmpID.ToString()
4. ลบคำเตือนบันทึกตาราง
ส่วนตัว void DataGrid_ItemCreated (Object ผู้ส่ง DataGridItemEventArgs e)
{
switch(e.Item.ItemType)
{
case ListItemType.Item :
case ListItemType.AlternatingItem :
case ListItemType.EditItem:
TableCell myTableCell
=
e.Item.Cells[14]
;
LinkButton) myTableCell.Controls[0];
myDeleteButton.Attributes.Add
("onclick"
, "return ยืนยัน('Are youSure
you want to Delete this information');");
ค่า
เริ่มต้น:
break
;
ลิงก์แถวของตาราง หน้าอื่น
เป็นโมฆะส่วนตัว grdCustomer_ItemDataBound
(ผู้ส่งวัตถุ 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].ข้อความ + "');") ;
}
ดับเบิลคลิกการเชื่อมต่อตาราง ไปที่เพจอื่นในเหตุการณ์ itemDataBind
if(e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem)
{
string OrderItemID =e.item. เซลล์[1].ข้อความ;
e.item.Attributes.Add("ondblclick",
"location.href='../ShippedGrid.aspx?id=" + OrderItemID + "'");
}
ดับเบิลคลิกที่ตารางเพื่อเปิดหน้าใหม่
ถ้า(e .Item.ItemType == ListItemType.Item ||.
e.Item.ItemType == ListItemType.AlternatingItem)
{
สตริง OrderItemID =e.item.cells[1].Text;
e.item.Attributes.Add("ondblclick",
"open('../ShippedGrid.aspx?id=" + OrderItemID + "')");
}
★หมายเหตุพิเศษ: [?id=] ไม่สามารถเป็น [? =】
6. ส่งพารามิเตอร์สำหรับคอลัมน์ไฮเปอร์ลิงก์ของตาราง
<asp:HyperLinkColumn Target="_blank" headertext="ID number" DataTextField="id"
NavigateUrl="aaa.aspx?id='<%# DataBinder.Eval(Container.DataItem, "เขตข้อมูล 1")%>'
& name='<%# DataBinder.Eval(Container.DataItem, "Data Field 2")%>' />
7. คลิกที่ตารางเพื่อเปลี่ยนสี
ถ้า (e.Item.ItemType == ListItemType.Item || e.Item. ItemType == ListItemType.AlternatingItem)
-
e.Item.Attributes.Add("onclick","this.style.พื้นหลังสี='#99cc00';
this.style.color='buttontext';this.style.cursor='default';");
}
เขียนใน _ItemDataBound ของ DataGrid
ถ้า (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem)
-
e.Item.Attributes.Add("onmouseover", "this.style.พื้นหลังสี='#99cc00';
this.style.color='buttontext';this.style.cursor='default';");
e.Item.Attributes.Add("onmouseout","this.style.พื้นหลังสี='';this.style.color='';");
}
8. เกี่ยวกับรูปแบบวันที่
การตั้งค่ารูปแบบวันที่
DataformatString="{0:yyyy-MM-dd}"
ฉันคิดว่าควรอยู่ในเหตุการณ์ itembound
e.items.cell["your column"].text=DateTime Parse(e .items.cell["your column"].text.ToString("yyyy-MM-dd"))
9. หากต้องการรับข้อความแสดงข้อผิดพลาดและไปที่เพจที่ระบุ
ห้ามใช้ Response.Redirect แต่ใช้ Server.Transfer
เช่น
// ใน global.asax
ป้องกันโมฆะ Application_Error (ผู้ส่งวัตถุ EventArgs e) {
ถ้า (Server.GetLastError() คือ HttpUnhandledException)
Server.Transfer("MyErrorPage.aspx");
//ส่วนที่เหลือของข้อยกเว้นที่ไม่ใช่ HttpUnhandledException จะถูกจัดการโดย ASP.NET เอง
}
การเปลี่ยนเส้นทางจะทำให้เกิดการโพสต์แบ็คและสูญเสียข้อมูลข้อผิดพลาด ดังนั้นคำแนะนำเพจควรดำเนินการโดยตรงบนฝั่งเซิร์ฟเวอร์ เพื่อให้สามารถรับข้อมูลข้อผิดพลาดบนหน้าการประมวลผลข้อผิดพลาดและประมวลผลตามนั้น
10. ล้าง
คุกกี้
คุกกี้.หมดอายุ=[วันที่และเวลา ];
Response.Cookies("ชื่อผู้ใช้").Expires = 0
11. การจัดการข้อยกเว้นแบบกำหนดเอง
// คลาสการจัดการข้อยกเว้นแบบกำหนดเอง
ใช้ระบบ;
ใช้ System.Diagnostics;
เนมสเปซ MyAppException
-
/***////// <สรุป>
/// คลาสการจัดการข้อยกเว้นของแอปพลิเคชันสืบทอดมาจากคลาสข้อยกเว้นของระบบ ApplicationException
/// บันทึกเนื้อหาข้อยกเว้นลงในบันทึกแอปพลิเคชันของ Windows NT/2000 โดยอัตโนมัติ
/// </สรุป>
AppException คลาสสาธารณะ: System.ApplicationException
-
publicAppException()
-
ถ้า (ApplicationConfiguration.EventLogEnabled)
LogEvent("เกิดข้อผิดพลาดที่ไม่ทราบสาเหตุ");
}
AppException สาธารณะ (ข้อความสตริง)
-
LogEvent(ข้อความ);
}
AppException สาธารณะ (ข้อความสตริง, ข้อยกเว้น InnerException)
-
LogEvent(ข้อความ);
ถ้า (innerException != null)
-
LogEvent(ข้อความภายในข้อยกเว้น);
-
}
//คลาสการบันทึก
ใช้ระบบ;
โดยใช้ระบบการกำหนดค่า;
โดยใช้ระบบการวินิจฉัย
ใช้ System.IO;
ใช้ System.Text;
ใช้ System.Threading;
เนมสเปซ MyEventLog
-
/***////// <สรุป>
/// คลาสการบันทึกเหตุการณ์ ซึ่งให้การสนับสนุนการบันทึกเหตุการณ์
/// <หมายเหตุ>
/// กำหนดวิธีการบันทึก 4 วิธี (ข้อผิดพลาด คำเตือน ข้อมูล ติดตาม)
/// </หมายเหตุ>
/// </สรุป>
ApplicationLog คลาสสาธารณะ
-
/***////// <สรุป>
/// บันทึกข้อมูลข้อผิดพลาดลงในบันทึกเหตุการณ์ Win2000/NT
/// <param name="message">ข้อมูลข้อความที่จะบันทึก</param>
/// </สรุป>
โมฆะสาธารณะคง WriteError (ข้อความสตริง)
{
WriteLog (TraceLevel.Error, ข้อความ);
-
/***////// <สรุป>
/// บันทึกข้อมูลคำเตือนลงในบันทึกเหตุการณ์ Win2000/NT
/// <param name="message">ข้อมูลข้อความที่จะบันทึก</param>
/// </สรุป>
โมฆะสาธารณะคง WriteWarning (ข้อความสตริง)
{
WriteLog (TraceLevel.Warning, ข้อความ);
-
/***////// <สรุป>
/// บันทึกข้อมูลพรอมต์ลงในบันทึกเหตุการณ์ Win2000/NT
/// <param name="message">ข้อมูลข้อความที่จะบันทึก</param>
/// </สรุป>
โมฆะสาธารณะคง WriteInfo (ข้อความสตริง)
-
WriteLog (TraceLevel.Info, ข้อความ);
-
/***////// <สรุป>
/// บันทึกข้อมูลการติดตามลงในบันทึกเหตุการณ์ Win2000/NT
/// <param name="message">ข้อมูลข้อความที่จะบันทึก</param>
/// </สรุป>
โมฆะสาธารณะคง WriteTrace (ข้อความสตริง)
-
WriteLog (TraceLevel.Verbose, ข้อความ);
-
/***////// <สรุป>
/// จัดรูปแบบรูปแบบข้อมูลข้อความที่บันทึกไว้ในบันทึกเหตุการณ์
/// <param name="ex">วัตถุข้อยกเว้นที่ต้องจัดรูปแบบ</param>
/// <param name="catchInfo">สตริงชื่อข้อมูลข้อยกเว้น</param>
/// <มูลค่าเพิ่ม>
/// <para>สตริงข้อมูลข้อยกเว้นที่จัดรูปแบบ รวมถึงเนื้อหาข้อยกเว้นและสแต็กการติดตาม</para>
/// </มูลค่าใหม่>
/// </สรุป>
รูปแบบสตริงคงที่สาธารณะ (ข้อยกเว้น เช่น สตริง catchInfo)
-
StringBuilder strBuilder = StringBuilder ใหม่ ();
ถ้า (catchInfo != String.Empty)
-
strBuilder.Append(catchInfo).Append("rn");
-
strBuilder.Append(ex.Message).Append("rn").Append(ex.StackTrace);
กลับ strBuilder.ToString();
}
/**//// <สรุป>
/// วิธีการเขียนบันทึกเหตุการณ์จริง
/// <param name="level">ระดับของข้อมูลที่จะบันทึก (ข้อผิดพลาด คำเตือน ข้อมูล ติดตาม)</param>
/// <param name="messageText">ข้อความที่จะบันทึก</param>
/// </สรุป>
โมฆะส่วนตัวคงที่ WriteLog (ระดับ TraceLevel, String messageText)
-
พยายาม
-
EventLogEntryType ประเภทรายการบันทึก;
สวิตช์ (ระดับ)
-
กรณี TraceLevel ข้อผิดพลาด:
LogEntryType = EventLogEntryType.Error;
หยุดพัก;
กรณี TraceLevel คำเตือน:
LogEntryType = EventLogEntryType.Warning;
หยุดพัก;
กรณี TraceLevel ข้อมูล:
LogEntryType = EventLogEntryType.Information;
หยุดพัก;
กรณี TraceLevel.รายละเอียด:
LogEntryType = EventLogEntryType.SuccessAudit;
หยุดพัก;
ค่าเริ่มต้น:
LogEntryType = EventLogEntryType.SuccessAudit;
หยุดพัก;
-
EventLog eventLog = ใหม่ EventLog("Application", ApplicationConfiguration.EventLogMachineName, ApplicationConfiguration.EventLogSourceName );
//เขียนบันทึกเหตุการณ์
eventLog.WriteEntry (ข้อความข้อความ LogEntryType);
-
catch {} // ละเว้นข้อยกเว้นใด ๆ
-
} //คลาส ApplicationLog
-
12. แผงเลื่อนในแนวนอนและขยายในแนวตั้งโดยอัตโนมัติ
<asp:panel style="overflow-x:scroll;overflow-y:auto;"></asp:panel>
13. Enter เพื่อแปลงเป็น Tab
<script language="javascript" สำหรับ = "เอกสาร" เหตุการณ์ = "onkeydown">
ถ้า (event.keyCode==13 && event.srcElement.type!='ปุ่ม' &&
event.srcElement.type!='ส่ง' && event.srcElement.type!='รีเซ็ต'
&& event.srcElement.type!=''&& event.srcElement.type!='textarea');
เหตุการณ์ keyCode=9;
</script>
onkeydown = "if (event.keyCode==13) event.keyCode = 9"
http://dotnet.aspx.cc/exam/enter2tab.aspx
14. คอลัมน์การเชื่อมต่อ DataGrid super
DataNavigateUrlField = "ชื่อฟิลด์" DataNavigateUrlformatString =" http://xx/inc/delete.aspx?ID={0 }"
15.แถว DataGrid เปลี่ยนสีด้วย
โมฆะส่วนตัวของเมาส์ DGzf_ItemDataBound
(ผู้ส่งวัตถุ System.Web.UI.WebControls.DataGridItemEventArgs e)
-
ถ้า (e.Item.ItemType!=ListItemType.Header)
-
e.Item.Attributes.Add( "onmouseout", "this.style.พื้นหลังสี=
""+e.Item.style["พื้นหลัง-สี"]+""");
e.Item.Attributes.Add( "onmouseover", "this.style.พื้นหลังสี=""+ "#EFF3F7"+""");
-
}
16. คอลัมน์เทมเพลต
<ASP:TEMPLATECOLUMNVisible="False" sortexpression="demo" headertext="ID">
<เทมเพลตรายการ>
<ASP:LABEL text='<%# DataBinder.Eval(Container.DataItem,
"ArticleID")%>' runat="เซิร์ฟเวอร์" width="80%" id="lblColumn" />
</รายการเทมเพลต>
</ASP:TEMPLATECOLUMN>
<ASP:TEMPLATECOLUMN ส่วนหัวข้อความ="ตรวจสอบ">
<HEADERstyle wrap="False"horizontalalign="Center"></HEADERstyle>
<เทมเพลตรายการ>
<ASP:CHECKBOX id = "chkExport" runat = "เซิร์ฟเวอร์" />
</รายการเทมเพลต>
<แก้ไขรายการเทมเพลต>
<ASP:CHECKBOX id = "chkExportON" runat = "เซิร์ฟเวอร์" ที่เปิดใช้งาน = "true" />
</แก้ไขรายการเทมเพลต>
</ASP:TEMPLATECOLUMN>
รหัสแบ็กเอนด์ที่ได้รับ
การป้องกันเป็นโมฆะ CheckAll_CheckedChanged (ผู้ส่งวัตถุ System.EventArgs e)
-
//เปลี่ยนการเลือกคอลัมน์เพื่อเลือกทั้งหมดหรือไม่มีเลย
ช่องทำเครื่องหมาย chkExport;
ถ้า (ตรวจสอบทั้งหมดตรวจสอบแล้ว)
-
foreach (DataGridItem oDataGridItem ใน MyDataGrid.Items)
-
chkExport = (ช่องทำเครื่องหมาย) oDataGridItem.FindControl("chkExport");
chkExport.Checked = จริง;
-
-
อื่น
-
foreach (DataGridItem oDataGridItem ใน MyDataGrid.Items)
-
chkExport = (ช่องทำเครื่องหมาย) oDataGridItem.FindControl("chkExport");
chkExport.Checked = เท็จ;
-
-
-
17. การจัดรูปแบบตัวเลข
[ผลลัพธ์ของ <%#Container.DataItem("price")%> คือ 500.0000 จะจัดรูปแบบเป็น 500.00 ได้อย่างไร]
<%#Container.DataItem("price","{0:¥#,##0.00}")%>
int i=123456;
string s=i.ToString("###,###.00");
18. การจัดรูปแบบวันที่
[ในหน้า aspx: <%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date")%>
แสดงเป็น: 11-8-2547 19:44:28
ฉันแค่ต้องการ: 11-8-2547]
<%# DataBinder.Eval(Container.DataItem, "Company_Ureg_Date", "{0:yyyy-Md}")%>
ฉันจะเปลี่ยนมันได้อย่างไร?
[จัดรูปแบบวันที่]
เอามันออกไป มักจะคัดค้าน
((DateTime) objectFromDB).ToString("yyyy-MM-dd");
[นิพจน์การตรวจสอบความถูกต้องสำหรับวันที่]
A. รูปแบบอินพุตที่ถูกต้องต่อไปนี้: [2004-2-29], [2004-02-29 22: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. รูปแบบการป้อนข้อมูลที่ถูกต้องต่อไปนี้: [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]))$
[การแปลงกรณี]
HttpUtility.HtmlEncode(string);
HttpUtility.HtmlDecode(string)
19. วิธีการตั้งค่าตัวแปรโกลบอล
Global.asax ในเหตุการณ์ Application_Start() และเพิ่ม Application[attribute name] = xxx;
มันเป็นตัวแปรโกลบอลของคุณ
20. จะทำให้การเชื่อมต่อที่สร้างโดย HyperLinkColumn คลิกที่การเชื่อมต่อเพื่อเปิดหน้าต่างใหม่ได้อย่างไร?
HyperLinkColumn มีแอตทริบิวต์ Target เพียงตั้งค่าเป็น "_blank" (Target="_blank")
[ASPNETMENU] คลิกที่รายการเมนูเพื่อเปิดหน้าต่างใหม่ เพิ่ม URLTarget="_blank" ไปยังรายการเมนูใน menuData ของคุณ ไฟล์ .xml
ตัวอย่างเช่น:
<?xml version="1.0" encoding="GB2312"?>
<MenuData ImagesBaseURL="images/">
<กลุ่มเมนู>
<MenuItem Label="ข้อมูลพารามิเตอร์ภายใน" URL="Infomation.aspx" >
<MenuGroup ID="บีบีซี">
<MenuItem Label = "ข้อมูลการประกาศ" URL = "Infomation.aspx"
URLTarget="_blank" LeftIcon="file.gif"/>
<MenuItem Label="เตรียมการบรรยายสรุปข้อมูล" URL="NewInfo.aspx" LeftIcon="file.gif" />
วิธีที่ดีที่สุดคืออัปเกรด aspnetmenu ของคุณเป็นเวอร์ชัน 1.2