tr標籤的可見性

相信大家在撰寫網頁時,多少會需要隱藏某些標籤(tr、td..),之前piggy都是用<tr id="tr1" ruant="server" />,在後台指定「tr1.visible="True"」。
今天在寫一支javascript,希望滑鼠移動到image時可以改變顏色,當滑鼠再進一步click則開啟某個tr,因為這次想要全都使用javascript去控制,而不是透過後台的方式,所以作了一些嘗試,以下是一點心得。

-----------------------------上面是廢話-----------------------------
1.tr的設定
<tr id="tr1" style="VISIBILITY: hidden">
 略
<tr/>
2.控制可見性
< a="#" onmousedown="document.getElementById('tr1').removeAttribute('style'); document.getElementById('tr1').style.visibility='visible';" <a/>
簡單來說,本範例是用onmousedown事件觸發,首先清空tr1的style設定接著再給予新的設定值即可,如果style的設定有很多的話,可以考慮獨立一個專門設置style的function給onmousedown叫用。

PS:piggy本來是用onmousedown="document.getElementById('tr1').visible='True';",可是都不work後來才改用設定style的方式,提供給跟我遇到一樣問題的人參考。

關於GridView的CommandName

大家都知道GridView很強大可以直接提供新增、修改、刪除的功能,

不過有時候因為種種原因需要以程式binding動態的dataSet,就要自己處理GridView各類behavior,相關處理方式請參考http://www.dotblogs.com.tw/topcat/archive/2009/02/23/7266.aspx



------今天要分享一點關於「GridView的RowCommand事件」的心得------

GridView可能包含多個自行設計的Colume,每個Colume各有各的CommandName...並且分別執行不同的事情,透過取得e.CommandName就可以在事件中撰寫他們要執行的程式碼,如下面的範例

Protected Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand
 Select Case e.CommandName
  Case "Hello"
   '當CommandName=Hello時處理本段程式
   '(略..)
  Case "ByeBye"
   '當CommandName=ByeBye時處理本段程式
   '(略..)
Case Else
    Exit Sub
 End Select
End Sub

上面的"Hello"和"ByeBye"都是正確的,但是如果用"Delete"就會出現如下圖的錯誤,piggy還想說都已經自訂程序勒,怎麼錯誤訊息還要我去處理RowDeleteing,如果大家以後遇到情況可能要檢查一下CommandName的命名,而不是傻傻的跑去撰寫RowDeleteing事件!!


〔心得〕CommandName命名絕對不可和GridView事件之名稱相同!

在網頁中加入Silverlight控制項

距離上篇安裝說明已過3個月~本來要寫「如何新增Silverlight專案」也作罷

========以上是廢話,接下來進入本篇的重點=========
在進行Silverlight專案測試,習慣上都是對布置好的場景按滑鼠右鍵以「在瀏覽器中檢視」或是透過Silverlight的測試頁來觀看結果,一直沒有把Silverlight的角色搞清楚,因此對於Silverlight的使用場合一直沒有feel,今天仔細拜讀章立民老師所出的「Silverlight2.0 精華技術手冊」第3章才開竅(暈...不知道之前在笨什麼),以下是範例Demo。
1.新增1個Asp.NET網站


2.首先一定要放置ScripManager
3.從工具箱的拖曳一個Silverlight控制項到Default.aspx的設計頁面
4.接著設定此控制項的Source屬性,將它指向某一個你已經設計好的xaml檔案
5.大功告成(如果覺得控制項變化太少可以再自己更改高度、寬度..等屬性)
前述步驟引用的xaml為他人資料,就不放上最後Demo畫面!
只要每個步驟都有作到,一定可以成功在您設計的網頁上看到豐富的Silverlight控制項!
[心得]:學習如何在網頁中載入Silverlight控制項,瞭解Silverlight並不是一個真正可獨立執行的網頁而是用來開發豐富的元件以輔助之前我們所熟知的ASP.NET網站。