//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //------------------------------------------------------------------------------ namespace System.Web.UI.Design.MobileControls { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.IO; using System.Web.UI; using System.Web.UI.Design; using System.Web.UI.WebControls; using System.Web.UI.MobileControls.Adapters; using System.Web.UI.Design.MobileControls.Adapters; /// /// /// Provides /// a designer for controls derived from ValidatorBase. /// /// [ System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode) ] [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.")] internal class BaseValidatorDesigner : MobileControlDesigner { private System.Web.UI.MobileControls.BaseValidator _baseValidator; /// /// /// Initializes the designer. /// /// /// /// The control element being designed. /// /// /// /// This is called by the designer host to establish the component being /// designed. /// /// /// public override void Initialize(IComponent component) { Debug.Assert(component is System.Web.UI.MobileControls.BaseValidator, "BaseValidatorDesigner.Initialize - Invalid BaseValidator Control"); _baseValidator = (System.Web.UI.MobileControls.BaseValidator) component; base.Initialize(component); // remove the contained asp validator within mobile validator so that it won't // be persisted. for (int i = _baseValidator.Controls.Count - 1; i >= 0; i--) { Control child = _baseValidator.Controls[i]; if (child is System.Web.UI.WebControls.BaseValidator) { _baseValidator.Controls.RemoveAt(i); } } } /// /// /// Gets the design time HTML of ValidatorBase controls. /// /// /// /// /// The design time /// HTML of the control. /// /// protected override String GetDesignTimeNormalHtml() { Debug.Assert(_baseValidator.Text != null); String originalText = _baseValidator.ErrorMessage; ValidatorDisplay validatorDisplay = _baseValidator.Display; bool blankText = (validatorDisplay == ValidatorDisplay.None || (originalText.Trim().Length == 0 && _baseValidator.Text.Trim().Length == 0)); if (blankText) { _baseValidator.ErrorMessage = "[" + _baseValidator.ID + "]"; } DesignerTextWriter tw = new DesignerTextWriter(); _baseValidator.Adapter.Render(tw); if (blankText) { _baseValidator.ErrorMessage = originalText; } return tw.ToString(); } } }