Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Adapters / HtmlTextBoxAdapter.cs / 1305376 / HtmlTextBoxAdapter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System.Security.Permissions; using System.Globalization; #if COMPILING_FOR_SHIPPED_SOURCE namespace System.Web.UI.MobileControls.ShippedAdapterSource #else namespace System.Web.UI.MobileControls.Adapters #endif { /* * HtmlTextBoxAdapter 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 HtmlTextBoxAdapter : HtmlControlAdapter { 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(HtmlMobileTextWriter writer) { writer.EnterLayout(Style); writer.WriteBeginTag("input"); writer.WriteAttribute("name", GetRenderName()); if ((Control.Text == null || Control.Text.Length > 0) && !Control.Password) { writer.Write(" value=\""); writer.WriteText(Control.Text, true); writer.Write("\""); } if (Control.Size > 0) { writer.WriteAttribute("size", Control.Size.ToString(CultureInfo.InvariantCulture)); } if (Control.MaxLength > 0) { writer.WriteAttribute("maxlength", Control.MaxLength.ToString(CultureInfo.InvariantCulture)); } if (Control.Password) { writer.WriteAttribute("type", "password"); } AddAttributes(writer); writer.Write("/>"); writer.ExitLayout(Style, Control.BreakAfter); writer.InputWritten = true; } internal virtual String GetRenderName() { String renderName; if(Device.RequiresAttributeColonSubstitution) { renderName = Control.UniqueID.Replace(':', ','); } else { renderName = Control.UniqueID; } return renderName; } /// protected override void RenderAsHiddenInputField(HtmlMobileTextWriter writer) { // 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)) { writer.WriteHiddenField(Control.UniqueID, Control.Text); } } 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.Security.Permissions; using System.Globalization; #if COMPILING_FOR_SHIPPED_SOURCE namespace System.Web.UI.MobileControls.ShippedAdapterSource #else namespace System.Web.UI.MobileControls.Adapters #endif { /* * HtmlTextBoxAdapter 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 HtmlTextBoxAdapter : HtmlControlAdapter { 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(HtmlMobileTextWriter writer) { writer.EnterLayout(Style); writer.WriteBeginTag("input"); writer.WriteAttribute("name", GetRenderName()); if ((Control.Text == null || Control.Text.Length > 0) && !Control.Password) { writer.Write(" value=\""); writer.WriteText(Control.Text, true); writer.Write("\""); } if (Control.Size > 0) { writer.WriteAttribute("size", Control.Size.ToString(CultureInfo.InvariantCulture)); } if (Control.MaxLength > 0) { writer.WriteAttribute("maxlength", Control.MaxLength.ToString(CultureInfo.InvariantCulture)); } if (Control.Password) { writer.WriteAttribute("type", "password"); } AddAttributes(writer); writer.Write("/>"); writer.ExitLayout(Style, Control.BreakAfter); writer.InputWritten = true; } internal virtual String GetRenderName() { String renderName; if(Device.RequiresAttributeColonSubstitution) { renderName = Control.UniqueID.Replace(':', ','); } else { renderName = Control.UniqueID; } return renderName; } /// protected override void RenderAsHiddenInputField(HtmlMobileTextWriter writer) { // 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)) { writer.WriteHiddenField(Control.UniqueID, Control.Text); } } 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
- XamlTreeBuilderBamlRecordWriter.cs
- EntityDataSourceChangedEventArgs.cs
- InfiniteIntConverter.cs
- XamlReader.cs
- TimeoutHelper.cs
- TableParagraph.cs
- HttpModulesSection.cs
- TextHidden.cs
- MimeMultiPart.cs
- FontWeight.cs
- IPEndPointCollection.cs
- PlatformCulture.cs
- SqlRowUpdatingEvent.cs
- GeneralTransform2DTo3D.cs
- DiscoveryDefaults.cs
- SamlAssertionKeyIdentifierClause.cs
- TreeNodeMouseHoverEvent.cs
- MetaChildrenColumn.cs
- AssemblySettingAttributes.cs
- DESCryptoServiceProvider.cs
- HttpApplicationStateBase.cs
- SignatureHelper.cs
- TreeViewEvent.cs
- ValuePattern.cs
- LinkDesigner.cs
- GeneralTransform.cs
- SuppressIldasmAttribute.cs
- SizeConverter.cs
- ReturnValue.cs
- FieldNameLookup.cs
- CounterCreationDataCollection.cs
- X509Certificate2Collection.cs
- ReferenceSchema.cs
- Floater.cs
- SqlInternalConnection.cs
- ControlType.cs
- CompositeKey.cs
- MetadataSet.cs
- DbgUtil.cs
- DataKeyArray.cs
- WebServiceParameterData.cs
- X509ClientCertificateAuthenticationElement.cs
- OrthographicCamera.cs
- LogWriteRestartAreaState.cs
- CurrentChangingEventArgs.cs
- RelationshipConstraintValidator.cs
- MetadataException.cs
- CustomAttribute.cs
- DLinqTableProvider.cs
- CurrencyManager.cs
- Process.cs
- ObjectListFieldCollection.cs
- SystemColorTracker.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- DataSet.cs
- VisualStyleRenderer.cs
- WinEventQueueItem.cs
- Helpers.cs
- Page.cs
- TargetInvocationException.cs
- CachedCompositeFamily.cs
- ViewManager.cs
- CloudCollection.cs
- ObfuscateAssemblyAttribute.cs
- NativeMethods.cs
- TypeDependencyAttribute.cs
- ApplicationServiceManager.cs
- FontDialog.cs
- LoadGrammarCompletedEventArgs.cs
- EntityContainerEmitter.cs
- CryptoProvider.cs
- ImageDesigner.cs
- DrawingAttributes.cs
- TypeSchema.cs
- ActivityValidator.cs
- DataGridTablesFactory.cs
- GetWorkflowTree.cs
- PerformanceCounterManager.cs
- StopStoryboard.cs
- CroppedBitmap.cs
- ThumbButtonInfoCollection.cs
- HttpModuleAction.cs
- WindowsToolbarAsMenu.cs
- DataServiceQueryOfT.cs
- Grid.cs
- FixedPage.cs
- SecurityElement.cs
- InProcStateClientManager.cs
- BitmapFrame.cs
- SoapAttributeAttribute.cs
- TcpClientSocketManager.cs
- Block.cs
- UriTemplateDispatchFormatter.cs
- DiagnosticTraceSource.cs
- shaper.cs
- PeerNameResolver.cs
- FileVersionInfo.cs
- EntitySet.cs
- UnsafeNativeMethods.cs
- FileDialogCustomPlacesCollection.cs