解決客戶端與伺服器端間相對位址差異問題

我們知道 ASP.NET 各個伺服器端控制項都可以使用 "~/" 來代表網站根目錄,所以只要使用類似 ~/Image 的標註法就可以毫無困難的定位到網站中所有相對位址,而無需特別註明網站的根目錄。如此一來,我們可以在開發端使用 /Project1/Image,等到發行到主伺服器時使用 /Image,依此類推...

...繼續閱讀 »

Image 控制項圖片動態調整大小

ASP.NET 的 Image 控制項到了客戶端會被 Rende 成 Img 控制項。Image 控制項在 Server 端固然可以使用 Image.Width 來查詢它的圖片寬度,但事實上你根本是查不到它的實際寬度的。不信的話,你可以親自去試試。你將會發現,除非你在 Image 控制項的宣告中直接指定 Widht 的值,否則你查出來的值是 Nothing/Null...

...繼續閱讀 »

善用擴充方法

雖然我個人認為自從 .Net 2.0 以後引進的 Lambda 運算式在某種程度上破壞了 C# 的嚴謹度, 但是對於一個程式設計師而言, 我們也不能否定它對於程式撰寫所能提供的方便性。擴充方法 (Extension Method) 也是一樣; 如果你還不知道擴充方法是什麼, 那麼當你看完本文之後, 我相信你會感謝微軟提供了這麼好用的功能...

...繼續閱讀 »

[ListView] 標準的 ListView 範例

在這裡我列出一個標準的 ListView 範例。這個 ListView 具有以下幾個特色: 1. 已提供 Display, Select, Sorting, Paging, Editing 等功能, 2. 提供各個標準架構的 HTML 標記, 未來稍加修改就可以直接套用, 3. 已把光棒功能加入; 如果不喜歡這個配色系統, 自己改掉就可以了, 4. 已修改 DataPager, 使它既可顯示分頁頁碼, 又有前一頁、下一頁、最前頁、最末頁等按鈕 (請自己加入圖檔)...
在 DataPager 中, 可以把共幾筆、共幾頁等資訊一併顯示

...繼續閱讀 »

[UserControl] 網頁生命週期與取不到 UserControl 資料的問題

如果你寫 ASP.NET 的程式夠久, 你就會知道網頁會發生的大部份奇怪的問題都發生在沒有弄清楚網頁生命週期這個原因。而如果你在 ASP.NET 上面的除錯經驗老道, 你就會很直覺的把很多奇怪的問題懷疑到網頁生命週期這個方向。幸好我們有很簡單的方法可以知道這方面的問題, 如果你不知道, 或是不熟悉, 你最好看看我以下的介紹...

...繼續閱讀 »