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
- UniformGrid.cs
- IPAddress.cs
- FontUnit.cs
- SafeUserTokenHandle.cs
- CodeIdentifier.cs
- DataGridColumnHeader.cs
- ItemCheckEvent.cs
- ValueType.cs
- IconBitmapDecoder.cs
- Overlapped.cs
- SmiEventSink_Default.cs
- DynamicMetaObjectBinder.cs
- ProxyAssemblyNotLoadedException.cs
- BinaryFormatter.cs
- GridViewColumnCollection.cs
- ListenerConnectionDemuxer.cs
- BooleanConverter.cs
- ReadOnlyPropertyMetadata.cs
- DllNotFoundException.cs
- UrlPath.cs
- HandledEventArgs.cs
- XmlExpressionDumper.cs
- SharedRuntimeState.cs
- IMembershipProvider.cs
- DataFormats.cs
- ToolStripDropTargetManager.cs
- ScriptComponentDescriptor.cs
- InitializingNewItemEventArgs.cs
- StyleBamlRecordReader.cs
- Misc.cs
- InteropEnvironment.cs
- LinkedResourceCollection.cs
- RawContentTypeMapper.cs
- ScriptHandlerFactory.cs
- MessageBox.cs
- ZipIOExtraFieldPaddingElement.cs
- ExpandoClass.cs
- KeyedHashAlgorithm.cs
- EasingFunctionBase.cs
- OdbcConnectionHandle.cs
- ItemList.cs
- UnsafeNativeMethods.cs
- ReadOnlyActivityGlyph.cs
- TraceData.cs
- TagMapCollection.cs
- DataControlLinkButton.cs
- querybuilder.cs
- PlainXmlSerializer.cs
- BinaryNode.cs
- LazyLoadBehavior.cs
- EmptyControlCollection.cs
- KeyProperty.cs
- PathStreamGeometryContext.cs
- SystemTcpStatistics.cs
- SByte.cs
- Schema.cs
- Marshal.cs
- InheritanceContextChangedEventManager.cs
- MetadataItemEmitter.cs
- ByteStack.cs
- LogicalExpressionTypeConverter.cs
- ModuleBuilderData.cs
- ExtensionElementCollection.cs
- Variable.cs
- TextSelection.cs
- ValidatorCompatibilityHelper.cs
- Path.cs
- DesignTableCollection.cs
- CreateSequence.cs
- _UriTypeConverter.cs
- StringValidator.cs
- JsonQueryStringConverter.cs
- TabRenderer.cs
- WorkflowMessageEventHandler.cs
- CompoundFileDeflateTransform.cs
- TranslateTransform.cs
- Operator.cs
- SizeAnimationBase.cs
- HttpModuleAction.cs
- XmlValueConverter.cs
- AdPostCacheSubstitution.cs
- XNameTypeConverter.cs
- DesignerHierarchicalDataSourceView.cs
- RightsManagementInformation.cs
- Popup.cs
- DesignerActionVerbList.cs
- Serializer.cs
- PropVariant.cs
- AspProxy.cs
- KnownAssemblyEntry.cs
- HttpStreamMessageEncoderFactory.cs
- TextRange.cs
- StrokeDescriptor.cs
- SecurityTokenException.cs
- TranslateTransform3D.cs
- ErrorRuntimeConfig.cs
- SqlClientMetaDataCollectionNames.cs
- Perspective.cs
- HandoffBehavior.cs
- IISUnsafeMethods.cs