![]() | |
![]() |
| | Thread Tools | Search this Thread | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Hi All, I wrote a custom CodeDom serializer class that first invokes default serialization for a class, after which it does some custom code generation. public override object Serialize(IDesignerSerializationManager manager, object value) { CodeDomSerializer baseSerializer = (CodeDomSerializer)manager.GetSerializer(myBaseTyp e, typeof(CodeDomSerializer)); object codeObject = baseSerializer.Serialize(manager, value); //custom code gen here... } My class uses the following attributes to specify the above serializer: [DesignerSerializer(typeof(MyCustomSerializer), typeof(CodeDomSerializer))] public partial class MyClass : UserControl { ..... } The custom code looks fine, but the MyClass instance variable is being generated local to the InitializeComponent() method: private void InitializeComponent() { MyControls.MyClass myClass1 = new MyControls.MyClass(); ... // // MyClass code generator // Updated on Monday, September 24, 2007 at 4:40:42 PM // myClass1.ShowImage = true; myClass1.Location = new System.Drawing.Point(149, 3); ... } I want the instance to be defined as a class level variable, rather than inside InitializeComponent(). I have read that an InstanceDescriptor can help specify this, but am as yet unable to get it working. Would appreciate any insights you have on doing so. Thanks, Lionel |
#3
| |||
| |||
|
|
I think alocalvariable will be generated only if you create it through the IDesignerHost.CreateComponent method. --------- - G Himangi, Sky Software http://www.ssware.com Shell MegaPack : GUI Controls For Drop-In Windows Explorer like Shell Browsing Functionality For Your App (.Net & ActiveX Editions). EZNamespaceExtensions.Net : Develop namespace extensions rapidly in .Net EZShellExtensions.Net : Develop all shell extensions,explorer bars and BHOs rapidly in .Net --------- "Lionel" <lioneljl... (AT) gmail (DOT) com> wrote in message news:1190649883.245521.135700 (AT) o80g2000hse (DOT) googlegroups.com... Hi All, I wrote a customCodeDomserializer class that first invokes default serialization for a class, after which it does some custom code generation. public override object Serialize(IDesignerSerializationManager manager, object value) { CodeDomSerializer baseSerializer = (CodeDomSerializer)manager.GetSerializer(myBaseTyp e, typeof(CodeDomSerializer)); object codeObject = baseSerializer.Serialize(manager, value); //custom code gen here... } My class uses the following attributes to specify the above serializer: [DesignerSerializer(typeof(MyCustomSerializer), typeof(CodeDomSerializer))] public partial class MyClass :UserControl { ..... } The custom code looks fine, but the MyClass instance variable is being generatedlocalto theInitializeComponent() method: private voidInitializeComponent() { MyControls.MyClass myClass1 = new MyControls.MyClass(); ... // // MyClass code generator // Updated on Monday, September 24, 2007 at 4:40:42 PM // myClass1.ShowImage = true; myClass1.Location = new System.Drawing.Point(149, 3); ... } I want the instance to be defined as a class level variable, rather than insideInitializeComponent(). I have read that an InstanceDescriptor can help specify this, but am as yet unable to get it working. Would appreciate any insights you have on doing so. Thanks, Lionel |
#4
| |||
| |||
|
|
Hi All, I wrote a custom CodeDom serializer class that first invokes default serialization for a class, after which it does some custom code generation. public override object Serialize(IDesignerSerializationManager manager, object value) { CodeDomSerializer baseSerializer = (CodeDomSerializer)manager.GetSerializer(myBaseTyp e, typeof(CodeDomSerializer)); object codeObject = baseSerializer.Serialize(manager, value); //custom code gen here... } My class uses the following attributes to specify the above serializer: [DesignerSerializer(typeof(MyCustomSerializer), typeof(CodeDomSerializer))] public partial class MyClass : UserControl { ..... } The custom code looks fine, but the MyClass instance variable is being generated local to the InitializeComponent() method: private void InitializeComponent() { MyControls.MyClass myClass1 = new MyControls.MyClass(); ... // // MyClass code generator // Updated on Monday, September 24, 2007 at 4:40:42 PM // myClass1.ShowImage = true; myClass1.Location = new System.Drawing.Point(149, 3); ... } I want the instance to be defined as a class level variable, rather than inside InitializeComponent(). I have read that an InstanceDescriptor can help specify this, but am as yet unable to get it working. Would appreciate any insights you have on doing so. Thanks, Lionel |
#5
| |||
| |||
|
|
Never mind, solved it... On Sep 24, 5:04 pm, Lionel <lioneljl... (AT) gmail (DOT) com> wrote: Hi All, I wrote a custom CodeDom serializer class that first invokes default serialization for a class, after which it does some custom code generation. public override object Serialize(IDesignerSerializationManager manager, object value) { CodeDomSerializer baseSerializer = (CodeDomSerializer)manager.GetSerializer(myBaseTyp e, typeof(CodeDomSerializer)); object codeObject = baseSerializer.Serialize(manager, value); //custom code gen here... } My class uses the following attributes to specify the above serializer: [DesignerSerializer(typeof(MyCustomSerializer), typeof(CodeDomSerializer))] public partial class MyClass : UserControl { ..... } The custom code looks fine, but the MyClass instance variable is being generated local to the InitializeComponent() method: private void InitializeComponent() { MyControls.MyClass myClass1 = new MyControls.MyClass(); ... // // MyClass code generator // Updated on Monday, September 24, 2007 at 4:40:42 PM // myClass1.ShowImage = true; myClass1.Location = new System.Drawing.Point(149, 3); ... } I want the instance to be defined as a class level variable, rather than inside InitializeComponent(). I have read that an InstanceDescriptor can help specify this, but am as yet unable to get it working. Would appreciate any insights you have on doing so. Thanks, Lionel |
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
| |