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:
11 // The above copyright notice and this permission notice shall be
12 // included in all copies or substantial portions of the Software.
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.
24 * Namespace : System.Web.UI.MobileControls
26 * Author : Gaurav Vaish
28 * Copyright : 2003 with Gaurav Vaish, and with
32 using System
.Collections
.Specialized
;
34 using System
.Web
.UI
.WebControls
;
36 namespace System
.Web
.UI
.MobileControls
38 public class Command
: TextControl
, IPostBackEventHandler
,
41 private static readonly object ClickEvent
= new object();
42 private static readonly object ItemCommandEvent
= new object();
48 public event EventHandler Click
52 Events
.AddHandler(ClickEvent
, value);
56 Events
.RemoveHandler(ClickEvent
, value);
60 public event ObjectListCommandEventHandler ItemCommand
64 Events
.AddHandler(ItemCommandEvent
, value);
68 Events
.RemoveHandler(ItemCommandEvent
, value);
72 bool IPostBackDataHandler
.LoadPostData(string key
,
73 NameValueCollection data
)
76 bool stateChanged
= Adapter
.LoadPostData(key
, data
, null, out dataChanged
);
80 Page
.RegisterRequiresRaiseEvent(this);
84 Page
.RegisterRequiresRaiseEvent(this);
89 void IPostBackDataHandler
.RaisePostDataChangedEvent()
93 void IPostBackEventHandler
.RaisePostBackEvent(string eventArgument
)
96 MobilePage
.Validate();
98 OnClick(EventArgs
.Empty
);
99 OnItemCommand(new CommandEventArgs(CommandName
, CommandArgument
));
102 public bool CausesValidation
106 object o
= ViewState
["CausesValidation"];
113 ViewState
["CausesValidation"] = value;
117 public string CommandArgument
121 object o
= ViewState
["CommandArgument"];
128 ViewState
["CommandArgument"] = value;
132 public string CommandName
136 object o
= ViewState
["CommandName"];
143 ViewState
["CommandName"] = value;
147 public CommandFormat Format
151 object o
= ViewState
["Format"];
153 return (CommandFormat
)o
;
154 return CommandFormat
.Button
;
158 //if(!System.Enum.IsDefined(typeof(CommandFormat), value)
159 // throw new ArgumentException("Illegal value");
160 ViewState
["Format"] = value;
164 public string ImageUrl
168 object o
= ViewState
["ImageUrl"];
175 ViewState
["ImageUrl"] = value;
179 public string SoftKeyLabel
183 object o
= ViewState
["SoftKeyLabel"];
190 ViewState
["SoftKeyLabel"] = value;
194 protected virtual void OnClick(EventArgs e
)
196 EventHandler eh
= (EventHandler
)(Events
[ClickEvent
]);
201 protected virtual void OnItemCommand(CommandEventArgs e
)
203 CommandEventHandler ceh
= (CommandEventHandler
)(Events
[ItemCommandEvent
]);
208 protected virtual bool IsFormSubmitControl()