1.讓ImageButton控件背景透明的方法
<asp:Button ID="ImageButton1" runat="server" style="background:url(); cursor:hand;" BorderWidth="0" Text="進(jìn)入系統(tǒng)" /> 靠的就是background:url()這句代碼
2.TextBox控件自動完成技巧
TextBox 控件有什么新鮮事?嗯!有個看似很小但卻常來困擾的小改良,就是“自動完成” (AutoComplete)。何謂自動完成呢?也就是TextBox 會記憶用戶曾經(jīng)輸入過文字,當(dāng)下次再 次輸入時就會自動提示相關(guān)字詞,最常見的是用戶登錄網(wǎng)站時就會自動帶出賬號和密碼。 這個功能在最早被發(fā)明時大家覺得很方便很好用,但隨著信息安全意識的加強(qiáng),這個功能 有時不但不討人喜歡,反而有點(diǎn)令人厭惡,為什么呢?現(xiàn)在無論是在家中、網(wǎng)吧還是公司,多 人共享一臺計算機(jī)的機(jī)會很多,而也是由于TextBox 的自動完成在作祟的緣故,他人要看你的 E-Mail 甚至假借您的賬號登錄網(wǎng)頁并非難事,只要在TextBox 中選取你的賬號后,密碼通常會 一并自動帶出。 關(guān)于這個惱人的問題,我接連被朋友問道該如何解決?在ASP.NET 2.0 的TextBox 控件內(nèi) 置的AutoCompleteType 屬性可以輕易解決這個問題,只要將TextBox 的AutoCompleteType 設(shè)置為“Disable”后,自動完成提示便完全不會出現(xiàn)。
3.ASP.NET中div定位
<table> <tr><td style="position: relative;"><asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" OnTextChanged="TextBox1_TextChanged"></asp:TextBox>//按鈕 <asp:Button ID="Button3" runat="server" Text="Button" OnClick="Button3_Click" /> <div id="div1" runat="server" style="z-index:1; display:none; position: absolute; left: 0px; top: 20px;"> </div> </td></tr> <tr><td> </td></tr> </table> 如果想控制一個層顯示,但是還不想這個層把頁面撐開,那么就要設(shè)置這個層的position:absolute(絕對定位)。然后代碼中設(shè)置他的display屬性,display:bolock是顯示層,none是隱藏層。但是只設(shè)置層的position: absolute會遇到麻煩,當(dāng)頁面大小發(fā)生改變時,層的位置就不對了,為了克服則必須設(shè)置div的父級定位:本例就設(shè)置div的父級<td>,將<td>的position: relative(相對定位),然后再設(shè)置好div的left和top,這樣無論頁面放大或縮小,div始終保持和文本框相對的位置,還不會撐開頁面。
4.后臺設(shè)置DIV的內(nèi)容
protected void TextBox1_TextChanged(object sender, EventArgs e)//單擊按鈕控制層顯示 { div1.Style["display"] = "block";
div.InnerHTML="要設(shè)置的內(nèi)容" }
注意:這里之所以能控制是因?yàn)樵O(shè)置了div的runat="server"
5.ASP.NET頁面框架跳轉(zhuǎn) 框架內(nèi)頁面跳轉(zhuǎn)到框架外: Response.Write("<script>top.location.href='../Login.aspx';</script>"); 框架外頁面跳轉(zhuǎn)到指定的框架內(nèi): Response.Write("<script>parent.frames['框架Name屬性'].location.href='../Login.aspx';</script>");
6.vs2005中body的顏色問題
body的顏色默認(rèn)是白色,但是如果在vs2005中設(shè)置了body的顏色后,整個頁面所有Table的背景色如果不設(shè)置,則Table默認(rèn)為透明的,顯示body的顏色!
在VS2005建立的Web窗體中,少了這行代碼樣式表文件就不起作用了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www./TR/xhtml1/DTD/xhtml1-transitional.dtd"> 具體問題還要進(jìn)一步研究
7.給服務(wù)器控件添加onmouseover,onmouseout等屬性
在VS2005中拖拽一個按鈕到頁面中,按鈕沒有onmouseover,onmouseout等屬性,強(qiáng)行寫入雖然vs2005中不認(rèn),但是是有效的!所有服務(wù)器控件均以此類推! <asp:Button ID="Button1" runat="server" Text="登錄" CssClass="btn1_mouseout" onmouseover="this.className='btn1_mouseover'" onmouseout="this.className='btn1_mouseout'" OnClick="Button1_Click1" />
8.后臺執(zhí)行彈出窗口代碼
protected void Button2_Click(object sender, EventArgs e)//后臺執(zhí)行彈出窗口代碼 { this.Page.RegisterStartupScript("aaa", "<script type=/"text/javascript/">window.open('../TWXY_SYS/UseShow.aspx','_self','width=400,height=300,resizable=no,scrollbars=no,status=no,toolbar=no,menubar=no,location=no');</script> "); }
9.后臺寫javascript寫法
protected void Page_Load(object sender, EventArgs e) { this.Page.RegisterClientScriptBlock("_autoPostBack", " <script type=/"text/javascript/"> function document.onkeydown(){ if (event.keyCode == 13){ document.getElementById('" + Button1.ClientID+ "').click(); }} </script> "); }
10.網(wǎng)頁引入樣式表文件的方法
<link id="css1" type="text/css" runat="server" rel="stylesheet" />
11.后臺調(diào)用前臺javascript函數(shù)的方法,后臺獲得前臺html標(biāo)簽的方法
protected void Page_Load(object sender, EventArgs e) { Page.RegisterStartupScript("aaa", "<script>showDetail();</script>"); }
前臺寫HTML標(biāo)簽,只要給標(biāo)簽加個name屬性,那么后臺就可以用Request.Form["name"]來獲得這個標(biāo)簽
12.得到指定月份的第一天和最后一天
int year = 2008; int month = 6;
DateTime FirstDay = new DateTime(year, month, 1); DateTime LastDay = FirstDay.AddMonth(1).AddDays(-1);
13.asp.net中調(diào)用outlook郵件界面
<a href="mailto:email@address1.com,email@address2.com?cc=email@address3.com&Subject=Hello&body=Happy New Year ">點(diǎn)擊我</a>
mailto:后面可以加4種參數(shù)
mailto:地址1,地址2,...地址N?cc=抄送的內(nèi)容&Subject=主題的內(nèi)容&body=郵件主體內(nèi)容 //紅色符號和字體為連接關(guān)鍵字
14.如何使Windows Form上的Panel或者Label控件半透明?
通過設(shè)置控件背景色的alpha值 panel1.BackColor = Color.FromArgb(65, 204, 212, 230); 注意:在設(shè)計時手動輸入這些值,不要用顏色選取
15.如何在用一個數(shù)據(jù)源DataTable綁定兩個控件,確保變化不反映在兩個控件中?
我們在一個Form中放置一個ListBox和一個ComboBox控件,當(dāng)數(shù)據(jù)源是一個DataTable而且綁定的ValueMember一致的時候我們選擇ListBox中的一個Item時,ComboBox控件中的相同的Item也會被自動選中,我們可以采取建立新的上下文綁定對象來拒絕這樣的同步操作 comboBox1.DataSource = dataset.Tables[ "Items " ]; comboBox1.ValueMember = "CustomerID "; comboBox1.DisplayMember = "CustomerID ";
listBox1.BindingContext = new BindingContext(); // 設(shè)置新的上下文綁定對象 listBox1.DataSource = dataset.Tables[ "Items " ]; listBox1.ValueMember = "CustomerID "; listBox1.DisplayMember = "CustomerID ";
16.判斷閏年
public static boolean isLeapYear(int year) { boolean isLeapYear = false; int gregorianCutoverYear = 1582;//1582 年定的 Gregorian Calendar 才再增加百年不潤四百年潤的規(guī)則 if( year >= gregorianCutoverYear ) { if((year%4 == 0) && ((year%100 != 0) || (year%400 == 0))) { isLeapYear = true; } } else{ if(year%4 == 0) { isLeapYear = true; } } return isLeapYear; }
|