2005-01-31 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mcs / class / System.Web.Mobile / System.Web.UI.MobileControls / SelectionList.cs
1
2 //
3 // Permission is hereby granted, free of charge, to any person obtaining
4 // a copy of this software and associated documentation files (the
5 // "Software"), to deal in the Software without restriction, including
6 // without limitation the rights to use, copy, modify, merge, publish,
7 // distribute, sublicense, and/or sell copies of the Software, and to
8 // permit persons to whom the Software is furnished to do so, subject to
9 // the following conditions:
10 // 
11 // The above copyright notice and this permission notice shall be
12 // included in all copies or substantial portions of the Software.
13 // 
14 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 //
22 /**
23  * Project   : Mono
24  * Namespace : System.Web.UI.MobileControls
25  * Class     : SelectionList
26  * Author    : Gaurav Vaish
27  *
28  * Copyright : 2003 with Gaurav Vaish, and with
29  *             Ximian Inc
30  */
31
32 using System.Collections;
33 using System.Web.UI;
34 using System.Web.Mobile;
35
36 namespace System.Web.UI.MobileControls
37 {
38         public class SelectionList : MobileControl, IListControl//, IPostBackDataHandler
39         {
40                 ListDataHelper dataHelper;
41
42                 private static readonly object ItemDataBindEvent = new object();
43                 private static readonly object SelectionIndexChangedEvent = new object();
44
45                 public SelectionList()
46                 {
47                         dataHelper = new ListDataHelper(this, ViewState);
48                 }
49                 
50                 protected virtual void OnItemDataBind(ListDataBindEventArgs e)
51                 {
52                         ListDataBindEventHandler hdbeh = Events[ItemDataBindEvent] as ListDataBindEventHandler;
53                         if(hdbeh != null)
54                         {
55                                 hdbeh(this, e);
56                         }
57                 }
58                 
59                 void IListControl.OnItemDataBind(ListDataBindEventArgs e)
60                 {
61                         OnItemDataBind(e);
62                 }
63                 
64                 bool IListControl.TrackingViewState
65                 {
66                         get
67                         {
68                                 return IsTrackingViewState;
69                         }
70                 }
71         }
72 }