Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / TextControlDesigner.cs / 1 / TextControlDesigner.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design { using System; using System.ComponentModel; using System.ComponentModel.Design; using System.Globalization; using System.Diagnostics; using System.IO; using System.Reflection; using System.Text; using System.Web.UI; ////// /// [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)] public class TextControlDesigner : ControlDesigner { ////// This designer can be used for controls which provide a Text property that /// is persisted as inner text. An example of such as control is the /// System.Web.UI.WebControls.Label class. This designer ensures that the /// Text property is set to some default value to ensure design-time visibility /// while preserving the children collection intact. It also ensures correct /// persistence of inner contents in both scenarios: inner text and child controls. /// ///public override string GetDesignTimeHtml() { Control control = ViewControl; PropertyInfo textPropInfo = control.GetType().GetProperty("Text"); string originalText = (string)textPropInfo.GetValue(control, null); bool blank = (originalText == null) || (originalText.Length == 0); bool hasControls = control.HasControls(); Control[] children = null; if (blank) { if (hasControls) { children = new Control[control.Controls.Count]; control.Controls.CopyTo(children, 0); } textPropInfo.SetValue(control, "[" + control.ID + "]", null); } string html; try { html = base.GetDesignTimeHtml(); } finally { if (blank) { textPropInfo.SetValue(control, originalText, null); if (hasControls) { foreach (Control c in children) { control.Controls.Add(c); } } } } return html; } } } // 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
- XmlElementCollection.cs
- HwndHostAutomationPeer.cs
- DBDataPermissionAttribute.cs
- WindowsListViewSubItem.cs
- TemplateBindingExtension.cs
- ToolStripManager.cs
- CacheForPrimitiveTypes.cs
- EncodedStreamFactory.cs
- SamlAssertionDirectKeyIdentifierClause.cs
- OrderToken.cs
- FragmentQueryProcessor.cs
- OleDragDropHandler.cs
- StretchValidation.cs
- DependencySource.cs
- columnmapfactory.cs
- PartManifestEntry.cs
- XmlCustomFormatter.cs
- PropertyTabAttribute.cs
- DataSourceSerializationException.cs
- ScopelessEnumAttribute.cs
- ReferentialConstraint.cs
- sqlpipe.cs
- FileChangesMonitor.cs
- VarRemapper.cs
- PackageProperties.cs
- StrongNamePublicKeyBlob.cs
- PageParser.cs
- ConfigurationErrorsException.cs
- SapiInterop.cs
- CodeTypeParameterCollection.cs
- BaseTemplateParser.cs
- MembershipValidatePasswordEventArgs.cs
- DesignTimeValidationFeature.cs
- TypeElement.cs
- StreamingContext.cs
- SharedStatics.cs
- EnumUnknown.cs
- PagesSection.cs
- RtfControls.cs
- MultiSelector.cs
- WebBrowserUriTypeConverter.cs
- ObjectListDataBindEventArgs.cs
- PackageProperties.cs
- WebPartVerbsEventArgs.cs
- WebCategoryAttribute.cs
- StylusPointCollection.cs
- PersonalizationStateInfoCollection.cs
- CalendarDataBindingHandler.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- AQNBuilder.cs
- SmtpFailedRecipientException.cs
- InstancePersistence.cs
- SiteMapNodeItem.cs
- EntityTypeEmitter.cs
- LeafCellTreeNode.cs
- ClockController.cs
- XmlComplianceUtil.cs
- DbFunctionCommandTree.cs
- PrintDialog.cs
- SponsorHelper.cs
- MobileSysDescriptionAttribute.cs
- TriggerActionCollection.cs
- Serializer.cs
- FontUnit.cs
- InstanceDescriptor.cs
- Rijndael.cs
- RegisteredDisposeScript.cs
- RawStylusSystemGestureInputReport.cs
- SystemFonts.cs
- BinarySerializer.cs
- XmlResolver.cs
- CodeLabeledStatement.cs
- EnterpriseServicesHelper.cs
- UserCancellationException.cs
- SqlRecordBuffer.cs
- CapabilitiesSection.cs
- HttpCapabilitiesBase.cs
- SharedPersonalizationStateInfo.cs
- BitmapFrameDecode.cs
- PropertyConverter.cs
- PingOptions.cs
- ITreeGenerator.cs
- NodeFunctions.cs
- NTAccount.cs
- CssTextWriter.cs
- SystemIcmpV6Statistics.cs
- TextPointerBase.cs
- GenericAuthenticationEventArgs.cs
- SHA384.cs
- PageThemeCodeDomTreeGenerator.cs
- TextEffectCollection.cs
- Exceptions.cs
- FileIOPermission.cs
- InfoCardClaim.cs
- UnionQueryOperator.cs
- State.cs
- ResourceExpressionBuilder.cs
- XPathArrayIterator.cs
- ReplacementText.cs
- TopClause.cs