The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

ASP.NET 有時必須同時停用 Theme 與 StyleSheetTheme

ASP.NET 2.0 在 Page 類別新增了個 StyleSheetTheme 屬性,可以指定頁面中要載入所有在該 Theme 目錄中的所有 CSS 檔案 ( App_Themes\ThemeName\*.css ),預設來說你只要有指定 Theme 屬性其 StyleSheetTheme 就會跟 Theme 一樣,也就是說該頁面除了會套用 Theme 所需的 *.skin 檔案之外,還會載入所有放在 Theme 目錄下的所有 *.css 檔案。

... 繼續閱讀 ...

解決 ASP.NET 中 System.OutOfMemoryException 的問題

這兩天去參加微軟技術菁英學院開的「ASP.NET 應用程式偵錯實戰專班」,雖然才短短兩天的時間,但學到的東西真是獲益良多阿,十分感謝 Terry 與 Louis 針對 Win32 Debugging 與 .NET Debugging 的精闢解析!日後如果有時間的話我也可以多分享一些關於 ASP.NET 偵錯相關技巧與心得,今天我想先分享一些關於 ASP.NET 中關於 System.OutOfMemoryException 的問題與解決方法。

... 繼續閱讀 ...

TextBox 在 MultiLine 模式時無法使用 MaxLength 屬性

用過的人都知道 TextBox 在 TextMode 屬性設定成 MultiLine 時,指定 MaxLength 是無效的,因為 TextBox 控制項在指定 TextMode="MultiLine" 時是使用 <textarea> 標籤輸出,而 <textarea> 標籤並不支援 MaxLength 屬性的關係,如果要做到這點就必須搭配 JavaScript 才能做到。

最近發現有人已經寫好了,且不只提供原始碼而已,還有很詳細的程式碼說明,有興趣的可以去看看。不過缺點是他沒提供 DLL 直接下載使用,必須要自己將原始碼抓回來編譯過才能用,我大概編譯了一下,大致說明一下編譯步驟:

... 繼續閱讀 ...

避免 DropDownList 指定無效的 SelectedValue

去年有寫過一篇 DropDownList 在作 DataBind 的時候發生 Exception,是還蠻實用的,不過原則上來說程式盡量不要讓他發生 Exception 比較好,因為丟出例外事件是十分消耗系統資源的,今天另外分享另一個小技巧。

如果原本指定給 SelectedValue 的程式長這樣:

DropDownList1.SelectedValue = Request.QueryString["ID"];

建議可以改成這樣:

... 繼續閱讀 ...

控制 DropDownList 產生的 ViewState 資料量

在每一個 ASP.NET 專案中通常都會用到好多 DropDownList 控制項,不過我想很多人不會特別注意到 DropDownList 會產生多少 ViewState,預設來說 DropDownList 控制項會將所有選項 ( ListItem ) 的資料都先儲存到 ViewState 中,以利如果選項很多的話就很有可能導致 ViewState 突然變很大,不但讓網頁下載回應速度變慢,也浪費網路頻寬。

... 繼續閱讀 ...