Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Adapters / XhtmlAdapters / XhtmlBasicTextBoxAdapter.cs / 1305376 / XhtmlBasicTextBoxAdapter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Security.Permissions; using System.Web.UI; using System.Web.Mobile; using System.Web.UI.MobileControls; using System.Web.UI.MobileControls.Adapters; using System.Globalization; #if COMPILING_FOR_SHIPPED_SOURCE namespace System.Web.UI.MobileControls.ShippedAdapterSource.XhtmlAdapters #else namespace System.Web.UI.MobileControls.Adapters.XhtmlAdapters #endif { ///[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 XhtmlTextBoxAdapter : XhtmlControlAdapter { /// public new TextBox Control { get { return base.Control as TextBox; } } // Used for optimization in RenderAsHiddenField. private String _staticValue; /// public override void OnInit(EventArgs e) { _staticValue = Control.Text; base.OnInit(e); } /// public override void Render(XhtmlMobileTextWriter writer) { ConditionalClearPendingBreak(writer); ConditionalEnterStyle(writer, Style); ConditionalRenderOpeningSpanElement(writer); if ((String) Device[XhtmlConstants.RequiresOnEnterForward] == "true") { writer.AddOnEnterForwardSetVar(Control.UniqueID, Control.Text); } writer.WriteBeginTag("input"); writer.WriteAttribute("name", Control.UniqueID); ConditionalRenderCustomAttribute(writer, XhtmlConstants.AccessKeyCustomAttribute); String controlText = Control.Text; if (controlText != null && controlText.Length > 0 && !Control.Password) { writer.Write(" value=\""); writer.WriteEncodedText(controlText); 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)); } String requiresType = Device["requiresInputTypeAttribute"]; if (Control.Password) { writer.WriteAttribute("type", "password"); } // InvariantCulture not needed, but included for best practices. else if (requiresType != null && String.Equals(requiresType, "true", StringComparison.OrdinalIgnoreCase)) { writer.WriteAttribute("type", "text"); } writer.Write("/>"); // ConditionalSetPendingBreak should always be called *before* ConditionalExitStyle. // ConditionalExitStyle may render a block element and clear the pending break. ConditionalSetPendingBreakAfterInline(writer); ConditionalRenderClosingSpanElement(writer); ConditionalExitStyle(writer, Style); } /// protected override void RenderAsHiddenInputField(XhtmlMobileTextWriter 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
- DateRangeEvent.cs
- BookmarkUndoUnit.cs
- FrameDimension.cs
- XmlElementAttributes.cs
- TextCompositionEventArgs.cs
- BuildProviderCollection.cs
- BooleanKeyFrameCollection.cs
- FullTrustAssembliesSection.cs
- TablePatternIdentifiers.cs
- GPRECT.cs
- CngAlgorithmGroup.cs
- GeometryCollection.cs
- Point3DConverter.cs
- ColumnMapProcessor.cs
- ResXResourceSet.cs
- InfocardClientCredentials.cs
- TemplateField.cs
- DiscoveryExceptionDictionary.cs
- EncoderBestFitFallback.cs
- DataGridViewCellFormattingEventArgs.cs
- MenuItemCollection.cs
- Focus.cs
- WindowsStatusBar.cs
- BooleanExpr.cs
- Automation.cs
- Pens.cs
- Model3DCollection.cs
- Tuple.cs
- SafePointer.cs
- CryptoHelper.cs
- SqlServices.cs
- ToolStripDropDownButton.cs
- DesignTimeParseData.cs
- ManagedIStream.cs
- BaseValidatorDesigner.cs
- CultureTable.cs
- BufferedReceiveElement.cs
- EntityDataSourceSelectedEventArgs.cs
- DbTransaction.cs
- DisableDpiAwarenessAttribute.cs
- SettingsBindableAttribute.cs
- OLEDB_Enum.cs
- LockRecursionException.cs
- XmlMemberMapping.cs
- XmlSchemaInclude.cs
- TextParaLineResult.cs
- DeploymentExceptionMapper.cs
- AdPostCacheSubstitution.cs
- KeyboardDevice.cs
- DrawingAttributeSerializer.cs
- NodeFunctions.cs
- ToolStripDesignerAvailabilityAttribute.cs
- EditCommandColumn.cs
- OracleParameter.cs
- ImageFormat.cs
- InvalidProgramException.cs
- HtmlGenericControl.cs
- TdsParser.cs
- PropertyItem.cs
- ExpressionPrinter.cs
- CounterCreationDataCollection.cs
- MemoryPressure.cs
- Vector3DConverter.cs
- PointAnimationUsingPath.cs
- DataTableReaderListener.cs
- columnmapfactory.cs
- ManagedFilter.cs
- IndexedString.cs
- StrokeIntersection.cs
- DebugView.cs
- EventLog.cs
- HMACSHA384.cs
- TdsParserSessionPool.cs
- IncrementalHitTester.cs
- RTTypeWrapper.cs
- HitTestWithGeometryDrawingContextWalker.cs
- WrapPanel.cs
- OpenTypeLayout.cs
- AdornerPresentationContext.cs
- RadioButtonRenderer.cs
- ContextQuery.cs
- GridSplitterAutomationPeer.cs
- KeyboardDevice.cs
- EventHandlerList.cs
- ImageCollectionCodeDomSerializer.cs
- TcpConnectionPool.cs
- AbsoluteQuery.cs
- EntityWrapperFactory.cs
- OleDbDataAdapter.cs
- DataObjectCopyingEventArgs.cs
- WebBrowserUriTypeConverter.cs
- DataGrid.cs
- CounterSampleCalculator.cs
- ServiceContractListItem.cs
- VisualStateChangedEventArgs.cs
- XmlSchemaAttributeGroup.cs
- NumberFunctions.cs
- WebSysDisplayNameAttribute.cs
- RewritingSimplifier.cs
- WorkflowCommandExtensionItem.cs