Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Adapters / WmlTextBoxAdapter.cs / 1305376 / WmlTextBoxAdapter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Globalization; using System.IO; using System.Web; using System.Web.UI; using System.Web.UI.MobileControls; using System.Security.Permissions; #if COMPILING_FOR_SHIPPED_SOURCE namespace System.Web.UI.MobileControls.ShippedAdapterSource #else namespace System.Web.UI.MobileControls.Adapters #endif { /* * WmlTextBoxAdapter class. * * Copyright (c) 2000 Microsoft Corporation */ ///[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 WmlTextBoxAdapter : WmlControlAdapter { private String _staticValue; /// protected new TextBox Control { get { return (TextBox)base.Control; } } /// public override void OnInit(EventArgs e) { _staticValue = Control.Text; base.OnInit(e); } /// public override void Render(WmlMobileTextWriter writer) { String value = Control.Text; bool requiresRandomID = RequiresRandomID(); writer.EnterLayout(Style); if (Control.Password) { value = String.Empty; } if (!PageAdapter.RequiresValueAttributeInInputTag()) { writer.AddFormVariable(Control.ClientID, value, requiresRandomID); } else { // This is to make sure an id is determined in the first // pass, and this is done in AddFormVariable as well. writer.MapClientIDToShortName(Control.ClientID, requiresRandomID); } String format = ((IAttributeAccessor)Control).GetAttribute("wmlFormat"); if (String.IsNullOrEmpty(format)) { if (Control.Numeric) { format = "*N"; } else { format = null; } } writer.RenderTextBox(Control.ClientID, value, format, Control.Title, Control.Password, Control.Size, Control.MaxLength, requiresRandomID, Control.BreakAfter); writer.ExitLayout(Style); } private bool RequiresRandomID() { String randomID = ((IAttributeAccessor)Control).GetAttribute("useRandomID"); if (randomID != null) { return String.Compare(randomID, "true", StringComparison.OrdinalIgnoreCase) == 0; } else { return Control.Password; } } /// protected override String GetPostBackValue() { // Optimization - if viewstate is enabled for this control, and the // postback returns to this page, we just let it do the trick. if (Control.Form.Action.Length > 0 || (!IsViewStateEnabled() && Control.Text != _staticValue)) { return Control.Text; } else { return null; } } private bool IsViewStateEnabled() { Control ctl = Control; while (ctl != null) { if (!ctl.EnableViewState) { return false; } ctl = ctl.Parent; } return true; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Globalization; using System.IO; using System.Web; using System.Web.UI; using System.Web.UI.MobileControls; using System.Security.Permissions; #if COMPILING_FOR_SHIPPED_SOURCE namespace System.Web.UI.MobileControls.ShippedAdapterSource #else namespace System.Web.UI.MobileControls.Adapters #endif { /* * WmlTextBoxAdapter class. * * Copyright (c) 2000 Microsoft Corporation */ ///[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 WmlTextBoxAdapter : WmlControlAdapter { private String _staticValue; /// protected new TextBox Control { get { return (TextBox)base.Control; } } /// public override void OnInit(EventArgs e) { _staticValue = Control.Text; base.OnInit(e); } /// public override void Render(WmlMobileTextWriter writer) { String value = Control.Text; bool requiresRandomID = RequiresRandomID(); writer.EnterLayout(Style); if (Control.Password) { value = String.Empty; } if (!PageAdapter.RequiresValueAttributeInInputTag()) { writer.AddFormVariable(Control.ClientID, value, requiresRandomID); } else { // This is to make sure an id is determined in the first // pass, and this is done in AddFormVariable as well. writer.MapClientIDToShortName(Control.ClientID, requiresRandomID); } String format = ((IAttributeAccessor)Control).GetAttribute("wmlFormat"); if (String.IsNullOrEmpty(format)) { if (Control.Numeric) { format = "*N"; } else { format = null; } } writer.RenderTextBox(Control.ClientID, value, format, Control.Title, Control.Password, Control.Size, Control.MaxLength, requiresRandomID, Control.BreakAfter); writer.ExitLayout(Style); } private bool RequiresRandomID() { String randomID = ((IAttributeAccessor)Control).GetAttribute("useRandomID"); if (randomID != null) { return String.Compare(randomID, "true", StringComparison.OrdinalIgnoreCase) == 0; } else { return Control.Password; } } /// protected override String GetPostBackValue() { // Optimization - if viewstate is enabled for this control, and the // postback returns to this page, we just let it do the trick. if (Control.Form.Action.Length > 0 || (!IsViewStateEnabled() && Control.Text != _staticValue)) { return Control.Text; } else { return null; } } private bool IsViewStateEnabled() { Control ctl = Control; while (ctl != null) { if (!ctl.EnableViewState) { return false; } ctl = ctl.Parent; } return true; } } } // 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
- OleDbFactory.cs
- CodeExporter.cs
- StylusPointPropertyInfoDefaults.cs
- ClientFormsAuthenticationCredentials.cs
- FormViewCommandEventArgs.cs
- ExceptionTrace.cs
- DispatcherEventArgs.cs
- EncoderParameter.cs
- PeerPresenceInfo.cs
- LayeredChannelListener.cs
- ExpressionNormalizer.cs
- EnumConverter.cs
- WhiteSpaceTrimStringConverter.cs
- SqlExpressionNullability.cs
- ServerIdentity.cs
- TextTreePropertyUndoUnit.cs
- CustomAttributeBuilder.cs
- DockPattern.cs
- DecimalAnimation.cs
- XmlTextWriter.cs
- SettingsPropertyIsReadOnlyException.cs
- HtmlValidatorAdapter.cs
- AsyncOperationManager.cs
- MethodAccessException.cs
- WorkflowView.cs
- TokenBasedSetEnumerator.cs
- RepeaterCommandEventArgs.cs
- GrammarBuilderRuleRef.cs
- DataGridViewMethods.cs
- Baml2006SchemaContext.cs
- UriSection.cs
- XpsDocument.cs
- cookieexception.cs
- AuthenticateEventArgs.cs
- WindowsIdentity.cs
- InvalidStoreProtectionKeyException.cs
- PublishLicense.cs
- DbProviderFactoriesConfigurationHandler.cs
- DriveNotFoundException.cs
- CodeStatement.cs
- DispatcherTimer.cs
- ObjectStateFormatter.cs
- BinaryVersion.cs
- SmiConnection.cs
- RequestCacheEntry.cs
- CompilerInfo.cs
- TextViewElement.cs
- HttpHeaderCollection.cs
- SizeFConverter.cs
- SkewTransform.cs
- ValidatingCollection.cs
- ToolStripActionList.cs
- TypeBuilder.cs
- KeyNameIdentifierClause.cs
- AutomationPeer.cs
- XmlSerializerNamespaces.cs
- PageContent.cs
- BoolExpression.cs
- TreeNodeStyle.cs
- ManipulationPivot.cs
- ConfigurationStrings.cs
- SiteMapNodeItemEventArgs.cs
- MatrixAnimationBase.cs
- IdleTimeoutMonitor.cs
- ServicePointManager.cs
- TimeoutStream.cs
- BufferedReadStream.cs
- DeviceContext.cs
- RtfFormatStack.cs
- AccessViolationException.cs
- ResourceExpressionEditorSheet.cs
- SafeHandles.cs
- CollectionConverter.cs
- PropertyChangingEventArgs.cs
- RootBrowserWindow.cs
- ExpandSegmentCollection.cs
- FacetDescription.cs
- FormViewModeEventArgs.cs
- ExpressionVisitor.cs
- ResourceAssociationType.cs
- UnsafeNativeMethods.cs
- CompositeFontParser.cs
- ExpandCollapsePattern.cs
- SoapRpcServiceAttribute.cs
- TreeView.cs
- DataGridViewRowConverter.cs
- SecurityUtils.cs
- DBSchemaRow.cs
- WebPartMinimizeVerb.cs
- AttachmentCollection.cs
- SqlNode.cs
- Token.cs
- DropDownList.cs
- PanelStyle.cs
- WriteableBitmap.cs
- IgnoreFileBuildProvider.cs
- HostingEnvironmentSection.cs
- RuntimeHelpers.cs
- PenThreadWorker.cs
- BufferedGraphicsContext.cs