Code:
/ DotNET / DotNET / 8.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
- BufferedReadStream.cs
- IERequestCache.cs
- AudioLevelUpdatedEventArgs.cs
- MessagePropertyVariants.cs
- ProxyBuilder.cs
- ExtenderProvidedPropertyAttribute.cs
- StyleTypedPropertyAttribute.cs
- ParagraphResult.cs
- XPathAncestorIterator.cs
- MultiTouchSystemGestureLogic.cs
- DataGridViewCellCancelEventArgs.cs
- DescendantBaseQuery.cs
- BooleanToVisibilityConverter.cs
- DelegateHelpers.Generated.cs
- QilScopedVisitor.cs
- AllMembershipCondition.cs
- SpnEndpointIdentityExtension.cs
- TTSEngineProxy.cs
- SoapIgnoreAttribute.cs
- BitmapImage.cs
- FormViewUpdateEventArgs.cs
- StringExpressionSet.cs
- QuaternionAnimationBase.cs
- Thread.cs
- SafeReversePInvokeHandle.cs
- KeyInterop.cs
- IndexedSelectQueryOperator.cs
- PrinterSettings.cs
- LinearGradientBrush.cs
- Transform3DGroup.cs
- FunctionQuery.cs
- Pipe.cs
- ErrorView.xaml.cs
- MatrixTransform3D.cs
- ReadOnlyHierarchicalDataSource.cs
- CorrelationValidator.cs
- ReflectionUtil.cs
- UDPClient.cs
- ADRoleFactory.cs
- Wildcard.cs
- TabPanel.cs
- DatePicker.cs
- CreateCardRequest.cs
- odbcmetadatacolumnnames.cs
- PolyLineSegment.cs
- EntityContainerAssociationSet.cs
- DivideByZeroException.cs
- Rijndael.cs
- GetIsBrowserClientRequest.cs
- StatusBarItem.cs
- latinshape.cs
- ToggleProviderWrapper.cs
- ParallelForEach.cs
- SoapAttributes.cs
- BypassElement.cs
- Formatter.cs
- SafeFileMappingHandle.cs
- InputMethodStateTypeInfo.cs
- DebugInfo.cs
- CheckableControlBaseAdapter.cs
- loginstatus.cs
- FileUtil.cs
- UntrustedRecipientException.cs
- XamlSerializerUtil.cs
- CharacterHit.cs
- PeerPresenceInfo.cs
- TraceSection.cs
- EntityObject.cs
- IERequestCache.cs
- CompiledQueryCacheEntry.cs
- CheckBoxRenderer.cs
- NavigationPropertyEmitter.cs
- EntityAdapter.cs
- ChtmlPageAdapter.cs
- WeakReferenceList.cs
- Thickness.cs
- MissingManifestResourceException.cs
- ReflectEventDescriptor.cs
- TextSchema.cs
- PageParserFilter.cs
- BasicKeyConstraint.cs
- ServiceModelEnumValidatorAttribute.cs
- MutexSecurity.cs
- RawStylusInput.cs
- HttpsChannelFactory.cs
- XPathDocumentBuilder.cs
- TableSectionStyle.cs
- DataGridViewComboBoxEditingControl.cs
- ThemeInfoAttribute.cs
- Sentence.cs
- BufferModesCollection.cs
- SimpleHandlerBuildProvider.cs
- PolyBezierSegmentFigureLogic.cs
- XhtmlBasicObjectListAdapter.cs
- InfoCardRSAPKCS1KeyExchangeFormatter.cs
- Stack.cs
- Viewport2DVisual3D.cs
- ImageDrawing.cs
- LiteralControl.cs
- ChildTable.cs