Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / ImageCollectionCodeDomSerializer.cs / 1 / ImageCollectionCodeDomSerializer.cs
namespace System.Windows.Forms.Design { using System.Design; using System.CodeDom; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Diagnostics; using System.Reflection; using System.ComponentModel.Design.Serialization; using System.Collections.Specialized; using System.Windows.Forms; ////// /// This serializer serializes string dictionaries. /// // public class ImageListCodeDomSerializer : CodeDomSerializer { ////// /// This method takes a CodeDomObject and deserializes into a real object. /// We don't do anything here. /// public override object Deserialize(IDesignerSerializationManager manager, object codeObject) { // if (manager == null || codeObject == null) { throw new ArgumentNullException( manager == null ? "manager" : "codeObject"); } // Find our base class's serializer. // CodeDomSerializer serializer = (CodeDomSerializer)manager.GetSerializer(typeof(Component), typeof(CodeDomSerializer)); if (serializer == null) { Debug.Fail("Unable to find a CodeDom serializer for 'Component'. Has someone tampered with the serialization providers?"); return null; } return serializer.Deserialize(manager, codeObject); } ////// /// Serializes the given object into a CodeDom object. /// public override object Serialize(IDesignerSerializationManager manager, object value) { CodeDomSerializer baseSerializer = (CodeDomSerializer)manager.GetSerializer(typeof(ImageList).BaseType, typeof(CodeDomSerializer)); object codeObject = baseSerializer.Serialize(manager, value); ImageList imageList = value as ImageList; if (imageList != null) { StringCollection imageKeys = imageList.Images.Keys; if (codeObject is CodeStatementCollection) { CodeExpression imageListObject = GetExpression(manager, value); if (imageListObject != null) { CodeExpression imageListImagesProperty = new CodePropertyReferenceExpression(imageListObject, "Images"); if (imageListImagesProperty != null) { for (int i = 0; i < imageKeys.Count; i++) { if ((imageKeys[i] != null) || (imageKeys[i].Length != 0)){ CodeMethodInvokeExpression setNameMethodCall = new CodeMethodInvokeExpression(imageListImagesProperty, "SetKeyName", new CodeExpression [] { new CodePrimitiveExpression(i), // SetKeyName(int, new CodePrimitiveExpression(imageKeys[i]) // string); }); ((CodeStatementCollection)codeObject).Add(setNameMethodCall); } } } } } } return codeObject; } } // Class ImageListCodeDomSerializer } // Namespace System.Windows.Forms.Design // 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
- StickyNoteHelper.cs
- DataGridLinkButton.cs
- HandlerBase.cs
- DocumentNUp.cs
- SpAudioStreamWrapper.cs
- KeyValueInternalCollection.cs
- HtmlImage.cs
- SystemIPv6InterfaceProperties.cs
- MasterPage.cs
- ForeignKeyConstraint.cs
- HtmlElementEventArgs.cs
- HyperLink.cs
- SharedHttpTransportManager.cs
- SerializationSectionGroup.cs
- CaseExpr.cs
- SpStreamWrapper.cs
- WebPartZoneCollection.cs
- Trustee.cs
- FullTextBreakpoint.cs
- TreeNodeConverter.cs
- MemberInfoSerializationHolder.cs
- ActivityBindForm.cs
- storepermissionattribute.cs
- KeyEventArgs.cs
- DetailsViewModeEventArgs.cs
- ByteKeyFrameCollection.cs
- WizardForm.cs
- FontStretches.cs
- PrimitiveXmlSerializers.cs
- AnimatedTypeHelpers.cs
- XAMLParseException.cs
- WebPartUserCapability.cs
- webbrowsersite.cs
- FunctionParameter.cs
- ICollection.cs
- ButtonFlatAdapter.cs
- DeclaredTypeValidator.cs
- BinaryFormatter.cs
- SqlCaseSimplifier.cs
- X509CertificateRecipientClientCredential.cs
- CngKey.cs
- OutputCacheProfile.cs
- BamlLocalizer.cs
- NaturalLanguageHyphenator.cs
- WebPart.cs
- DateTimeValueSerializerContext.cs
- SynchronizedDispatch.cs
- SmuggledIUnknown.cs
- Type.cs
- PassportAuthenticationEventArgs.cs
- AppendHelper.cs
- XpsS0ValidatingLoader.cs
- TextEffect.cs
- CompiledAction.cs
- ParseNumbers.cs
- XmlSchemaCollection.cs
- ToolStripPanelRenderEventArgs.cs
- XmlCharCheckingWriter.cs
- GenericsInstances.cs
- ChineseLunisolarCalendar.cs
- Attributes.cs
- XNodeNavigator.cs
- ClientScriptItemCollection.cs
- ToolStripDropDown.cs
- complextypematerializer.cs
- EntityDataSourceWizardForm.cs
- RegexCompilationInfo.cs
- MachineKeyConverter.cs
- RawTextInputReport.cs
- MetafileHeader.cs
- RtfToXamlLexer.cs
- Config.cs
- TableLayoutStyleCollection.cs
- HyperLinkStyle.cs
- SingleAnimation.cs
- DigitShape.cs
- KnownTypes.cs
- CommandBindingCollection.cs
- SizeIndependentAnimationStorage.cs
- Point3DAnimationBase.cs
- Lookup.cs
- IsolatedStorageException.cs
- ClientConfigPaths.cs
- Version.cs
- SqlMethods.cs
- PtsContext.cs
- _SSPIWrapper.cs
- ValidatingReaderNodeData.cs
- WebPartCollection.cs
- DescendentsWalker.cs
- Triplet.cs
- __ComObject.cs
- FormatterServicesNoSerializableCheck.cs
- BooleanToVisibilityConverter.cs
- HotSpot.cs
- FormViewCommandEventArgs.cs
- OleDbRowUpdatedEvent.cs
- HashAlgorithm.cs
- ObjectDataSourceEventArgs.cs
- CurrentTimeZone.cs