Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / HtmlControls / HtmlContainerControl.cs / 1 / HtmlContainerControl.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.HtmlControls { using System.Runtime.Serialization.Formatters; using System; using System.Collections; using System.ComponentModel; using System.IO; using System.Web.UI; using System.Security.Permissions; /* * A control representing an intrinsic Html tag. */ ////// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] abstract public class HtmlContainerControl : HtmlControl { /* * Creates a new WebControl */ ///The ////// class defines the methods, /// properties and events /// available to all Html Server controls that must have a /// closing tag. /// protected HtmlContainerControl() : this("span") { } /* * Creates a new HtmlContainerControl */ ///Initializes a new instance of a ///class using /// default values. /// public HtmlContainerControl(string tag) : base(tag) { } /* * The inner html content between the begin and end tag. * A set will replace any existing child controls with a single literal. * A get will return the text of a single literal child OR * will throw an exception if there are no children, more than one * child, or the single child is not a literal. */ ///Initializes a new instance of a ///class using the /// specified string. /// [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), HtmlControlPersistable(false), ] public virtual string InnerHtml { get { if (IsLiteralContent()) return((LiteralControl) Controls[0]).Text; else if (HasControls() && (Controls.Count == 1) && Controls[0] is DataBoundLiteralControl) return ((DataBoundLiteralControl) Controls[0]).Text; else { if (Controls.Count == 0) return String.Empty; throw new HttpException(SR.GetString(SR.Inner_Content_not_literal, ID)); } } set { Controls.Clear(); Controls.Add(new LiteralControl(value)); ViewState["innerhtml"] = value; } } /* * The inner text content between the begin and end tag. * A set will replace any existing child controls with a single literal. * A get will return the text of a single literal child OR * will throw an exception if there are no children, more than one child, or * the single child is not a literal. */ ////// Gets or sets the /// content found between the opening and closing tags of the specified HTML server control. /// ////// [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), HtmlControlPersistable(false), ] public virtual string InnerText { get { return HttpUtility.HtmlDecode(InnerHtml); } set { InnerHtml = HttpUtility.HtmlEncode(value); } } ////// Gets or sets all text between the opening and closing tags /// of the specified HTML server control. /// ////// protected override ControlCollection CreateControlCollection() { return new ControlCollection(this); } ///[To be supplied.] ////// /// protected override void LoadViewState(object savedState) { if (savedState != null) { base.LoadViewState(savedState); string s = (string)ViewState["innerhtml"]; if (s != null) InnerHtml = s; } } /* * Render the control into the given writer. */ ////// /// protected internal override void Render(HtmlTextWriter writer) { RenderBeginTag(writer); RenderChildren(writer); RenderEndTag(writer); } /* * Override to prevent InnerHtml from being rendered as an attribute. */ ////// /// protected override void RenderAttributes(HtmlTextWriter writer) { ViewState.Remove("innerhtml"); base.RenderAttributes(writer); } /* * Render the end tag, </TAGNAME>. */ ////// /// protected virtual void RenderEndTag(HtmlTextWriter writer) { writer.WriteEndTag(TagName); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OperationInvokerBehavior.cs
- SmtpReplyReaderFactory.cs
- XmlAttributeHolder.cs
- TrayIconDesigner.cs
- InkCanvasInnerCanvas.cs
- HtmlMeta.cs
- SweepDirectionValidation.cs
- XXXOnTypeBuilderInstantiation.cs
- ObjectToken.cs
- SafeNativeMethods.cs
- __ComObject.cs
- DataConnectionHelper.cs
- Configuration.cs
- XPathQilFactory.cs
- TemplateInstanceAttribute.cs
- SmtpFailedRecipientException.cs
- CompositionAdorner.cs
- GetMemberBinder.cs
- TemplateContent.cs
- VisualBasicSettingsHandler.cs
- GestureRecognitionResult.cs
- SessionStateModule.cs
- FixedPageStructure.cs
- XmlAttributes.cs
- CodeDirectoryCompiler.cs
- HostingEnvironment.cs
- DataGridViewRowCancelEventArgs.cs
- Mutex.cs
- TrustLevel.cs
- EntityContainerEmitter.cs
- MetadataException.cs
- HostedElements.cs
- TouchFrameEventArgs.cs
- PersonalizationStateQuery.cs
- CacheMode.cs
- WebControlAdapter.cs
- EncoderReplacementFallback.cs
- ConstraintEnumerator.cs
- ToolStripRenderEventArgs.cs
- CollectionBase.cs
- FunctionUpdateCommand.cs
- UnsupportedPolicyOptionsException.cs
- AutomationPatternInfo.cs
- ProcessRequestArgs.cs
- VisualStateChangedEventArgs.cs
- OpenTypeCommon.cs
- PieceDirectory.cs
- DeleteBookmarkScope.cs
- TextServicesCompartment.cs
- XmlArrayAttribute.cs
- TimeEnumHelper.cs
- ConfigXmlDocument.cs
- DllNotFoundException.cs
- UserControl.cs
- ChannelSettingsElement.cs
- WebPartCancelEventArgs.cs
- TypedDataSourceCodeGenerator.cs
- ModifyActivitiesPropertyDescriptor.cs
- ObjectItemConventionAssemblyLoader.cs
- TextProperties.cs
- TextBox.cs
- NodeFunctions.cs
- PeerTransportSecurityElement.cs
- FormViewDeleteEventArgs.cs
- _Semaphore.cs
- ControlBuilder.cs
- TrackingServices.cs
- TreeNode.cs
- DateTimeSerializationSection.cs
- SimpleBitVector32.cs
- VersionPair.cs
- SqlNode.cs
- BezierSegment.cs
- BaseTemplateCodeDomTreeGenerator.cs
- PermissionSetEnumerator.cs
- OwnerDrawPropertyBag.cs
- SafeThreadHandle.cs
- OutputCacheModule.cs
- CheckBoxRenderer.cs
- WebPartEditorCancelVerb.cs
- EntityDataSourceState.cs
- InfoCardRSACryptoProvider.cs
- COM2ColorConverter.cs
- webproxy.cs
- StylusPointPropertyInfo.cs
- FlowSwitch.cs
- TableLayoutStyleCollection.cs
- StylusTouchDevice.cs
- ExtendedPropertiesHandler.cs
- WsrmMessageInfo.cs
- DelegatingConfigHost.cs
- MruCache.cs
- WebBrowserProgressChangedEventHandler.cs
- NameTable.cs
- TraceContextEventArgs.cs
- Serializer.cs
- WsrmTraceRecord.cs
- DataGridViewCellCollection.cs
- WCFServiceClientProxyGenerator.cs
- Policy.cs