Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / WebControls / LocalizeDesigner.cs / 1 / LocalizeDesigner.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.WebControls { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Design; using System.Diagnostics; using System.Globalization; using System.Text; using System.Web.UI.Design; using System.Web.UI.WebControls; [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)] [SupportsPreviewControl(true)] internal class LocalizeDesigner : LiteralDesigner { private const string DesignTimeHtml = @""; public override string GetDesignTimeHtml(DesignerRegionCollection regions) { EditableDesignerRegion region = new EditableDesignerRegion(this, "Text"); region.Description = SR.GetString(SR.LocalizeDesigner_RegionWatermark); region.Properties[typeof(Control)] = Component; regions.Add(region); return String.Format(CultureInfo.InvariantCulture, DesignTimeHtml, DesignerRegion.DesignerRegionAttributeName); } public override string GetEditableDesignerRegionContent(EditableDesignerRegion region) { PropertyDescriptor propDesc = TypeDescriptor.GetProperties(Component)["Text"]; return (string)propDesc.GetValue(Component); } public override void SetEditableDesignerRegionContent(EditableDesignerRegion region, string content) { string text = content; try { IDesignerHost designerHost = (IDesignerHost)GetService(typeof(IDesignerHost)); Control[] controls = ControlParser.ParseControls(designerHost, content); text = String.Empty; foreach (Control c in controls) { LiteralControl literal = c as LiteralControl; if (literal != null) { text += literal.Text; } } } catch { // In the unlikely event that there is an error parsing controls from the // region content, we just end up using the raw content as the Text property. // It's highly unlikely to ever throw an exception since the tool just // persisted the content moments earlier. } PropertyDescriptor propDesc = TypeDescriptor.GetProperties(Component)["Text"]; propDesc.SetValue(Component, text); } protected override void PostFilterProperties(IDictionary properties) { // Hide all properties except for ID HideAllPropertiesExceptID(properties); base.PostFilterAttributes(properties); } } } // 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
- PropertyChangeTracker.cs
- CancelEventArgs.cs
- StateDesigner.cs
- DataGridViewBand.cs
- ChannelDispatcherCollection.cs
- XmlEntity.cs
- Compiler.cs
- SettingsProperty.cs
- LookupBindingPropertiesAttribute.cs
- ServiceBuildProvider.cs
- DesignerActionKeyboardBehavior.cs
- CornerRadiusConverter.cs
- BamlTreeNode.cs
- ColumnClickEvent.cs
- SqlDependencyListener.cs
- XsltSettings.cs
- _Rfc2616CacheValidators.cs
- Application.cs
- BindingsCollection.cs
- WebResponse.cs
- SqlInternalConnectionTds.cs
- SafeCoTaskMem.cs
- TabPage.cs
- CompiledRegexRunner.cs
- GroupLabel.cs
- SkipQueryOptionExpression.cs
- ping.cs
- ClonableStack.cs
- SQLDateTimeStorage.cs
- WinInet.cs
- XmlSchemaCollection.cs
- SymmetricCryptoHandle.cs
- CustomErrorCollection.cs
- InfoCardRSACryptoProvider.cs
- ThicknessAnimationBase.cs
- EpmSyndicationContentSerializer.cs
- AppearanceEditorPart.cs
- ForwardPositionQuery.cs
- QilPatternVisitor.cs
- DateTimePicker.cs
- BuildProviderInstallComponent.cs
- XsltOutput.cs
- MouseActionValueSerializer.cs
- KeyFrames.cs
- SetStateEventArgs.cs
- TextTreeExtractElementUndoUnit.cs
- WinEventWrap.cs
- Int32EqualityComparer.cs
- XmlSchemaInferenceException.cs
- SchemeSettingElement.cs
- DataGridViewCellStateChangedEventArgs.cs
- IdentitySection.cs
- BuildResultCache.cs
- Converter.cs
- Signature.cs
- oledbmetadatacolumnnames.cs
- ProviderCommandInfoUtils.cs
- NumericUpDownAcceleration.cs
- DropSource.cs
- Dump.cs
- RepeaterItem.cs
- GetLedgerEntryForRecipientRequest.cs
- BaseUriWithWildcard.cs
- GlobalizationAssembly.cs
- DataGridViewAddColumnDialog.cs
- BamlRecords.cs
- HandleCollector.cs
- CryptoKeySecurity.cs
- BamlBinaryWriter.cs
- NavigatingCancelEventArgs.cs
- BitmapEffectGroup.cs
- CapacityStreamGeometryContext.cs
- HttpContextServiceHost.cs
- TextFormatterContext.cs
- WindowsListViewItemCheckBox.cs
- DataObjectAttribute.cs
- MenuRenderer.cs
- GeometryModel3D.cs
- DispatchWrapper.cs
- HttpRuntimeSection.cs
- SQLByteStorage.cs
- ResourceCodeDomSerializer.cs
- ToolStripContentPanel.cs
- MobileUserControl.cs
- CompileXomlTask.cs
- DetailsViewUpdatedEventArgs.cs
- NumericUpDown.cs
- XmlTextReaderImpl.cs
- StrokeNode.cs
- AnonymousIdentificationModule.cs
- SecurityKeyType.cs
- ServiceCredentials.cs
- ConfigXmlWhitespace.cs
- PhysicalOps.cs
- Types.cs
- ClientCredentialsSecurityTokenManager.cs
- PropertyTabChangedEvent.cs
- LinearQuaternionKeyFrame.cs
- DataColumnMapping.cs
- HostExecutionContextManager.cs