摘要:[AJAX]Ajax Control Toolkit套上Skin的問題
因為我的UI上面需要有收合的動作
所以就來用用看Ajax Control Toolkit的 Accordion
然後套用後就想把樣式抽到Skin上
<ajaxToolkit:Accordion ID="AccordionQuery" runat="server" SkinID="AccordionQuery" >
...
畫面就出現
不管他就Run試試看,結果是可以跑的0.0(事實上,一開始不能跑,會有javascript錯誤,可能是skin沒存檔)
然後回來看這個錯誤,看起來應該是屬性沒有設定,Render就會有問題=.=
於是把屬性加回去,只剩css相關放在Skin
aspx
<ajaxToolkit:Accordion ID="AccordionQuery" runat="server" SelectedIndex="-1"
FadeTransitions="false" FramesPerSecond="40" TransitionDuration="250" AutoSize="None"
RequireOpenedPane="false" SuppressHeaderPostbacks="true" SkinID="AccordionQuery" >
skin
<ajaxToolkit:Accordion SkinID="AccordionQuery" runat="server" HeaderCssClass="accordionHeader"
HeaderSelectedCssClass="accordionHeaderSelected" ContentCssClass="accordionContent" >
</ajaxToolkit:Accordion>
這樣跑起來點Header上按鈕會有Javascipt錯誤,點header沒反應。
後來才想起來Skin會把屬性都取代掉
所以改成這樣
skin
<ajaxToolkit:Accordion SkinID="AccordionQuery" runat="server" SelectedIndex="-1"
FadeTransitions="false" FramesPerSecond="40" TransitionDuration="250" AutoSize="None"
RequireOpenedPane="false" SuppressHeaderPostbacks="true" HeaderCssClass="accordionHeader"
HeaderSelectedCssClass="accordionHeaderSelected" ContentCssClass="accordionContent" >
</ajaxToolkit:Accordion>
這樣就可以正常work
感覺上Ajax Control Toolkit跟原生Custom Control有點差異
另外再抱怨一下VS2008 XD
剛我在重現問題時,用undo去回復code,突然錯誤訊息不一樣
Accordion的panel裡多了一堆code,就把Accordion整個control code重複貼到後面
整個格式就大亂,害我還去看那段是多出來的code=.=