2014-01-08 32 views
0

使用ASP.NET WebForms,獲取DataSet的好方法是什麼?而不是將其綁定到線性ListBox或DropDownList控件(例如),綁定它到一個看起來像一組按鈕或切換,可能排隊或堆疊等控制?如何將ASP.NET數據集綁定/呈現爲按鈕

一個例子UI實現可能看起來像一個數字鍵盤...

Please Choose: 
[1] [2] [3] 
[4] [5] [6] 
[7] [8] [9] 
Submit >> 

...其中1..9都來自於數據集(表示一些數據結構的數字,也許一組產品要選擇的ID)已經被呈現爲小鍵盤,並且用戶可以點擊/選擇一個或多個項目/按鈕。完成後,他們單擊Submit(提交),控件的事件處理Submit(提交)以提取選定的項目數據(即綁定項目/行的ID)。

作爲擴展,這將是一個可重用的控制,以便我們能那麼做這樣的事情......

Step 1. Please Choose item: 
[1] [2] [3] 
[4] [5] [6] 
[7] [8] [9] 
Submit >> 

---------------------- 

You selected: 1, 5, 8 
Step 2. Please Choose Sub-item: 
[A] [B] [C] [D] [E] [F] 
[G] [H] [I] [J] [K] [L] 
[M] [N] [O] [P] [Q] [R] 
Submit >> 

---------------------- 

You selected: J, Q 
Step 3. Please Choose Sub-sub-item: 
[Apple] [Pear] [Orange] 
[Kiwi] [Lemon] [Grape] 
Submit >> 

...該用戶已經從第1步,那麼第2步控制選擇是基於他們的步驟1選擇動態地創建/填充/呈現的,然後他們從步驟2中選擇呈現步驟3(基於2),然後選擇步驟3等等,直到最終的提交它可以在幕後做任何事情。

是否有一個現有的ASP.NET控件可以啓用UI方面的事情,或者它需要一些重要的全部或部分額外的JavaScript(例如jQuery)? (綁定和動態創建是我已經可以通過用戶控件等進行的操作。)

非常感謝。

回答

1

是的,你可以使用checkbox-list控制來獲得你想要的。這裏有一個例子標記,您可以使用:

<asp:CheckBoxList id="checkboxlist1" 
     AutoPostBack="True" 
     CellPadding="5" 
     CellSpacing="5" 
     RepeatColumns="2" 
     RepeatDirection="Vertical" 
     RepeatLayout="Flow" 
     TextAlign="Right" 
     OnSelectedIndexChanged="Check_Clicked" 
     runat="server"> 
    <asp:ListItem>Item 1</asp:ListItem> 
    <asp:ListItem>Item 2</asp:ListItem> 
    <asp:ListItem>Item 3</asp:ListItem> 
    <asp:ListItem>Item 4</asp:ListItem> 
    <asp:ListItem>Item 5</asp:ListItem> 
    <asp:ListItem>Item 6</asp:ListItem> 
    </asp:CheckBoxList> 

然後你就可以使用jqueryui button獲得定製的造型在客戶端。

+0

謝謝,這看起來不錯!我會嘗試一下。 – 41st

相關問題