Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Command.cs / 1305376 / Command.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Specialized; using System.ComponentModel; using System.ComponentModel.Design; using System.Diagnostics; using System.Drawing.Design; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Security.Permissions; namespace System.Web.UI.MobileControls { /* * Mobile Command class. * * Copyright (c) 2000 Microsoft Corporation */ ///[ DataBindingHandler("System.Web.UI.Design.TextDataBindingHandler, " + AssemblyRef.SystemDesign), DefaultEvent("Click"), DefaultProperty("Text"), Designer(typeof(System.Web.UI.Design.MobileControls.CommandDesigner)), DesignerAdapter(typeof(System.Web.UI.Design.MobileControls.Adapters.DesignerCommandAdapter)), ToolboxData("<{0}:Command runat=\"server\">Command{0}:Command>"), ToolboxItem("System.Web.UI.Design.WebControlToolboxItem, " + AssemblyRef.SystemDesign) ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] public class Command : TextControl, IPostBackEventHandler, IPostBackDataHandler { private static readonly Object EventClick = new Object (); private static readonly Object EventItemCommand = new Object (); /// protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); // If this control will be rendered as an image Debug.Assert(ImageUrl != null); if (MobilePage != null && ImageUrl.Length != 0 && MobilePage.Device.SupportsImageSubmit) { // HTML input controls of type image postback as name.x and // name.y which is not associated with this control by default // in Page.ProcessPostData(). MobilePage.RegisterRequiresPostBack(this); } } /// protected bool LoadPostData(String key, NameValueCollection data) { bool dataChanged; bool handledByAdapter = Adapter.LoadPostData(key, data, null, out dataChanged); // If the adapter handled the post back and set dataChanged this // was an image button (responds with ID.x and ID.y). if (handledByAdapter) { if(dataChanged) { Page.RegisterRequiresRaiseEvent(this); } } // Otherwise if the adapter did not handle the past back, use // the same method as Page.ProcessPostData(). else if(data[key] != null) { Page.RegisterRequiresRaiseEvent(this); } return false; // no need to raise PostDataChangedEvent. } /// protected void RaisePostDataChangedEvent() { } /// [ Bindable(true), DefaultValue(""), MobileCategory(SR.Category_Behavior), MobileSysDescription(SR.Command_SoftkeyLabel) ] public String SoftkeyLabel { get { String s = (String) ViewState["Softkeylabel"]; return((s != null) ? s : String.Empty); } set { ViewState["Softkeylabel"] = value; } } /// [ Bindable(true), DefaultValue(""), MobileCategory(SR.Category_Behavior), MobileSysDescription(SR.Command_CommandName) ] public String CommandName { get { String s = (String) ViewState["CommandName"]; return((s != null) ? s : String.Empty); } set { ViewState["CommandName"] = value; } } /// [ Bindable(true), DefaultValue(""), MobileCategory(SR.Category_Behavior), MobileSysDescription(SR.Command_CommandArgument) ] public String CommandArgument { get { String s = (String) ViewState["CommandArgument"]; return((s != null) ? s : String.Empty); } set { ViewState["CommandArgument"] = value; } } /// [ Bindable(true), DefaultValue(""), Editor(typeof(System.Web.UI.Design.MobileControls.ImageUrlEditor), typeof(UITypeEditor)), MobileCategory(SR.Category_Appearance), MobileSysDescription(SR.Image_ImageUrl) ] public String ImageUrl { get { String s = (String) ViewState["ImageUrl"]; return((s != null) ? s : String.Empty); } set { ViewState["ImageUrl"] = value; } } /// [ Bindable(false), DefaultValue(true), MobileCategory(SR.Category_Behavior), MobileSysDescription(SR.Command_CausesValidation) ] public bool CausesValidation { get { object b = ViewState["CausesValidation"]; return((b == null) ? true : (bool)b); } set { ViewState["CausesValidation"] = value; } } /// [ Bindable(true), DefaultValue(CommandFormat.Button), MobileCategory(SR.Category_Appearance), MobileSysDescription(SR.Command_Format) ] public CommandFormat Format { get { Object o = ViewState["Format"]; return((o == null) ? CommandFormat.Button : (CommandFormat)o); } set { ViewState["Format"] = value; } } /// protected virtual void OnClick(EventArgs e) { EventHandler onClickHandler = (EventHandler)Events[EventClick]; if (onClickHandler != null) { onClickHandler(this,e); } } /// protected virtual void OnItemCommand(CommandEventArgs e) { CommandEventHandler onItemCommandHandler = (CommandEventHandler)Events[EventItemCommand]; if (onItemCommandHandler != null) { onItemCommandHandler(this,e); } RaiseBubbleEvent (this, e); } /// [ MobileCategory(SR.Category_Action), MobileSysDescription(SR.Command_OnClick) ] public event EventHandler Click { add { Events.AddHandler(EventClick, value); } remove { Events.RemoveHandler(EventClick, value); } } /// [ MobileCategory(SR.Category_Action), MobileSysDescription(SR.Command_OnItemCommand) ] public event CommandEventHandler ItemCommand { add { Events.AddHandler(EventItemCommand, value); } remove { Events.RemoveHandler(EventItemCommand, value); } } /// /// protected void RaisePostBackEvent(String argument) { if (CausesValidation) { MobilePage.Validate(); } // It is legitimate to reset the form back to the first page // after a form submit. Form.CurrentPage = 1; OnClick (EventArgs.Empty); OnItemCommand (new CommandEventArgs(CommandName, CommandArgument)); } /// protected override bool IsFormSubmitControl() { return true; } #region IPostBackEventHandler implementation void IPostBackEventHandler.RaisePostBackEvent(String eventArgument) { RaisePostBackEvent(eventArgument); } #endregion #region IPostBackDataHandler implementation bool IPostBackDataHandler.LoadPostData(String key, NameValueCollection data) { return LoadPostData(key, data); } void IPostBackDataHandler.RaisePostDataChangedEvent() { RaisePostDataChangedEvent(); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- X509RecipientCertificateServiceElement.cs
- DictionaryCustomTypeDescriptor.cs
- UrlAuthFailedErrorFormatter.cs
- TransportChannelListener.cs
- DataTable.cs
- DiffuseMaterial.cs
- linebase.cs
- OleDbStruct.cs
- DefaultWorkflowSchedulerService.cs
- HijriCalendar.cs
- TextServicesManager.cs
- XmlReflectionImporter.cs
- SBCSCodePageEncoding.cs
- ControlAdapter.cs
- ScrollItemPatternIdentifiers.cs
- SchemaNamespaceManager.cs
- BinaryExpression.cs
- SecurityDescriptor.cs
- CounterCreationData.cs
- DataServiceHostFactory.cs
- _HelperAsyncResults.cs
- XmlDocumentSchema.cs
- RuntimeResourceSet.cs
- XmlDeclaration.cs
- LineServices.cs
- SigningProgress.cs
- ArgIterator.cs
- XmlUtf8RawTextWriter.cs
- LogArchiveSnapshot.cs
- WindowsRichEditRange.cs
- EntityDataSourceDesignerHelper.cs
- RegexWorker.cs
- ModuleElement.cs
- CompositionAdorner.cs
- SecurityKeyType.cs
- PageAsyncTask.cs
- GenericPrincipal.cs
- BindingWorker.cs
- AssociationSetMetadata.cs
- SoapSchemaImporter.cs
- MimeTypeMapper.cs
- IsolatedStoragePermission.cs
- DockPatternIdentifiers.cs
- PopupRootAutomationPeer.cs
- PrinterResolution.cs
- PenThreadWorker.cs
- unsafenativemethodsother.cs
- SqlBooleanMismatchVisitor.cs
- BamlTreeUpdater.cs
- SimpleFileLog.cs
- Table.cs
- ServiceModelDictionary.cs
- UrlMappingCollection.cs
- UpdatePanelTriggerCollection.cs
- DependencyObjectType.cs
- SafeFindHandle.cs
- QueryOperatorEnumerator.cs
- ServiceDescriptionData.cs
- ValidationRuleCollection.cs
- Pipe.cs
- ObjectItemNoOpAssemblyLoader.cs
- GridViewSortEventArgs.cs
- QilLiteral.cs
- PriorityBinding.cs
- WorkflowOperationBehavior.cs
- BuildManager.cs
- AnimatedTypeHelpers.cs
- LinqDataSourceDeleteEventArgs.cs
- DataServiceProviderWrapper.cs
- filewebrequest.cs
- EntityDataReader.cs
- DateTimeValueSerializer.cs
- ObjectReaderCompiler.cs
- BrushValueSerializer.cs
- XmlLanguage.cs
- TextDecoration.cs
- EventMappingSettingsCollection.cs
- GeneratedContractType.cs
- SizeAnimation.cs
- StickyNoteHelper.cs
- SafeProcessHandle.cs
- BulletedList.cs
- datacache.cs
- SizeChangedInfo.cs
- JournalEntryStack.cs
- BuildResult.cs
- PackagingUtilities.cs
- TypefaceMap.cs
- AssemblyBuilderData.cs
- CodeTypeOfExpression.cs
- TextSimpleMarkerProperties.cs
- TypeExtensionConverter.cs
- JsonDataContract.cs
- _PooledStream.cs
- SecureEnvironment.cs
- DataBoundControl.cs
- WSSecurityPolicy.cs
- MenuAutoFormat.cs
- PerformanceCountersElement.cs
- SqlPersonalizationProvider.cs