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
- CheckBoxField.cs
- IfAction.cs
- CommonDialog.cs
- KeyConstraint.cs
- StreamAsIStream.cs
- WebPartsPersonalizationAuthorization.cs
- CacheEntry.cs
- mediaclock.cs
- ClockController.cs
- DataGridRow.cs
- TextBlockAutomationPeer.cs
- HttpGetClientProtocol.cs
- DefaultTypeArgumentAttribute.cs
- NativeMethods.cs
- _ShellExpression.cs
- _NegotiateClient.cs
- HttpSessionStateWrapper.cs
- SQLConvert.cs
- ThreadStateException.cs
- WebBrowserNavigatedEventHandler.cs
- DivideByZeroException.cs
- CodeAssignStatement.cs
- OracleCommandBuilder.cs
- ObjectListFieldsPage.cs
- PropertyRecord.cs
- ReadOnlyHierarchicalDataSource.cs
- ISessionStateStore.cs
- Matrix3DConverter.cs
- FrameworkContentElement.cs
- TypeBuilder.cs
- SByteConverter.cs
- DigestTraceRecordHelper.cs
- FacetValueContainer.cs
- DataComponentNameHandler.cs
- XmlReflectionImporter.cs
- FontDifferentiator.cs
- HotCommands.cs
- _SslSessionsCache.cs
- DeclarativeCatalogPart.cs
- HwndProxyElementProvider.cs
- XmlSchemaValidationException.cs
- HtmlLink.cs
- PropertyGeneratedEventArgs.cs
- NullRuntimeConfig.cs
- control.ime.cs
- CounterSampleCalculator.cs
- ElementNotEnabledException.cs
- ObjectSecurity.cs
- ActionItem.cs
- ClientScriptManagerWrapper.cs
- ImageField.cs
- ImageFormat.cs
- LoginViewDesigner.cs
- SettingsPropertyCollection.cs
- EmptyCollection.cs
- PackWebResponse.cs
- MatchNoneMessageFilter.cs
- TemplateComponentConnector.cs
- KeyGestureConverter.cs
- ActiveXContainer.cs
- MsmqChannelFactory.cs
- XmlIncludeAttribute.cs
- Msec.cs
- PropertyNames.cs
- FileSystemWatcher.cs
- HatchBrush.cs
- ServiceOperationUIEditor.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- Publisher.cs
- FrugalMap.cs
- Encoding.cs
- OptimizerPatterns.cs
- XPathArrayIterator.cs
- SmiEventSink_DeferedProcessing.cs
- SizeFConverter.cs
- StringComparer.cs
- SettingsPropertyWrongTypeException.cs
- DragEventArgs.cs
- FormatSettings.cs
- BaseAppDomainProtocolHandler.cs
- ThreadPool.cs
- FilteredSchemaElementLookUpTable.cs
- AudioFormatConverter.cs
- XmlKeywords.cs
- Privilege.cs
- UrlAuthorizationModule.cs
- ToolStripSystemRenderer.cs
- EnumUnknown.cs
- RelationHandler.cs
- BeginEvent.cs
- BuildDependencySet.cs
- Slider.cs
- ControlIdConverter.cs
- SafeNativeMethods.cs
- ListItemParagraph.cs
- InputLanguageCollection.cs
- PtsHost.cs
- srgsitem.cs
- GCHandleCookieTable.cs
- _DisconnectOverlappedAsyncResult.cs