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
- DesignerAdRotatorAdapter.cs
- HtmlInputButton.cs
- MatchAttribute.cs
- Win32PrintDialog.cs
- XmlQueryCardinality.cs
- Operators.cs
- ImageMapEventArgs.cs
- ObjectSecurityT.cs
- GeometryGroup.cs
- MailWebEventProvider.cs
- ProfessionalColors.cs
- BufferBuilder.cs
- MetadataCache.cs
- TypePropertyEditor.cs
- FamilyMap.cs
- DocumentApplication.cs
- MenuItemAutomationPeer.cs
- XslException.cs
- DataObjectAttribute.cs
- FrugalMap.cs
- HostingPreferredMapPath.cs
- DataSourceCacheDurationConverter.cs
- SimpleBitVector32.cs
- ParallelSeparator.xaml.cs
- ProxyElement.cs
- SerialErrors.cs
- IPAddressCollection.cs
- SQLUtility.cs
- LineMetrics.cs
- ReliableSession.cs
- Content.cs
- DataGridViewColumn.cs
- AutoFocusStyle.xaml.cs
- ISAPIWorkerRequest.cs
- List.cs
- TextBoxBase.cs
- InstanceOwnerQueryResult.cs
- DesignerVerb.cs
- EntityDataSourceChangingEventArgs.cs
- XPathSingletonIterator.cs
- EntityReference.cs
- StorageEndPropertyMapping.cs
- StdValidatorsAndConverters.cs
- HtmlControlDesigner.cs
- Privilege.cs
- IResourceProvider.cs
- NewArrayExpression.cs
- PrimitiveXmlSerializers.cs
- Dynamic.cs
- HttpCacheVaryByContentEncodings.cs
- ParameterModifier.cs
- EmissiveMaterial.cs
- Hyperlink.cs
- DesignerPainter.cs
- CopyNamespacesAction.cs
- CharKeyFrameCollection.cs
- NonBatchDirectoryCompiler.cs
- FillBehavior.cs
- CompilerResults.cs
- ProcessHost.cs
- DataGridColumnReorderingEventArgs.cs
- DesignerDataTable.cs
- MissingSatelliteAssemblyException.cs
- HttpValueCollection.cs
- VersionedStream.cs
- BindableTemplateBuilder.cs
- XMLSchema.cs
- XamlInterfaces.cs
- EntityDataSourceDesignerHelper.cs
- Utilities.cs
- HandlerMappingMemo.cs
- _SafeNetHandles.cs
- CollectionType.cs
- FacetValues.cs
- CalendarDay.cs
- SizeConverter.cs
- TextChange.cs
- JsonGlobals.cs
- Section.cs
- DoubleKeyFrameCollection.cs
- COAUTHINFO.cs
- AspNetSynchronizationContext.cs
- LinqDataSourceContextData.cs
- ImportCatalogPart.cs
- Translator.cs
- _FtpControlStream.cs
- SchemaMapping.cs
- MsmqMessageProperty.cs
- PropertyGrid.cs
- RevocationPoint.cs
- RequestQueue.cs
- XPathSelectionIterator.cs
- Clipboard.cs
- M3DUtil.cs
- File.cs
- ContractCodeDomInfo.cs
- InputReferenceExpression.cs
- IODescriptionAttribute.cs
- AbstractSvcMapFileLoader.cs
- MexServiceChannelBuilder.cs