Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / Visual Studio.NET / Extensibility / February 2006

Tip: Looking for answers? Try searching our database.

Language & Localizable properties for Windows Form designer

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Notre Poubelle - 01 Feb 2006 18:31 GMT
Hello,

I'm looking to host the Windows Form designer outside Visual Studio and
inside my own project system within Visual Studio.  I've seen several
examples from various places that demonstrate how to rehost the design
surface and provide implementations for the toolbox, property page, and other
parts of the designer.

What I'm interested in is the 'Localizable' and 'Language' properties one
can set when using the Windows Form designer inside Visual Studio.  These
allow a WYSIWYG way of localizing a form.  I've not seen these properties in
any of the several samples I've run across that rehost the Windows Form
designer outside the C#/VB.NET Visual Studio projects.  Is this something
custom to Visual Studio, and particularly to the C# and VB.NET project
systems?  Is it possible to get these features outside of Visual Studio (or
in my own project system)?

Thanks,
Notre
"Gary Chang[MSFT]" - 02 Feb 2006 07:55 GMT
Hi Notre,

Currently, we are looking into this problem. We will reply here with more
information as soon as possible.
If you have any more concerns on it, please feel free to post here.

Thanks for your understanding!

Best regards,

Gary Chang
Microsoft Community Support
======================================================
PLEASE NOTE the newsgroup SECURE CODE and PASSWORD will be updated at 9:00
AM PST, February 14, 2006.  Please complete a re-registration process by
entering the secure code mmpng2006 when prompted. Once you have entered the
secure code mmpng2006, you will be able to update your profile and access
the partner newsgroups.
======================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from this issue.
======================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
======================================================
"Ed Dore [MSFT]" - 02 Feb 2006 22:05 GMT
Hi Notre,

I'm not real familiar with hosting the winform designer outside of the VS
IDE, but from what I could determine, this feature isn't specific to the VS
IDE or the various project systems. Originally (circa VS 2002/2003), these
properties were implemented with an IExtenderProvider added via
IExtenderProviderService.AddExtenderProvider. But with VS 2005, it appears
we now use the CodeDomLocalizationProvider to add these two properties.

Specifically, we use a customized CodeDomDesignerLoader object, and in it's
override of PerformLoad, we get an IDesignerSerializationProvider through
the LocalizationProviderService.CreateProvider if that service is
available, and if not, we create a new CodeDomeLocationProvider object.

Then add the provider via the
IDesignerSerializationManager.AddSerializationProvider() method.

At least thats what I could pick up from looking through the
implementation. :-)

You might get some additional feedback or assistance by posting to the
microsoft.public.dotnet.framework.windowsforms or
microsoft.public.dotnet.framework.windowsforms.designtime groups as well.
As this is more a winform thing that an Visual Studio thing per se.

Sincerely,
Ed Dore [MSFT]

This post is 'AS IS' with no warranties, and confers no rights.
Notre Poubelle - 06 Feb 2006 21:36 GMT
Hi Ed,

Thanks very much for your reply!  There's quite a few things I can look into
further based on the information you've provided.  As you've noted, most of
the interfaces/classes seem to be related to WinForms rather than VS so
there's hope I could use this outside of VS and also within my own project
system, within VS.  

You mentioned that the localization feature doesn't appear to be specific to
the VS IDE or a project system. Regarding the various classes and interfaces
that you mentioned, are these being used within a project system or within
parts of the VS shell code?  I'm guessing they must be called from one of
these two general places...

I did post my question to the
microsoft.public.dotnet.framework.windowsforms.designtime group as well,
thinking (like you) that it possibly isn't VS specific, but Gary picked up
the question there anyway and said he'd post any replies to this group :).

Cheers,

Notre
"Ed Dore [MSFT]" - 07 Feb 2006 23:16 GMT
Hi Notre,

It's actually specific to the editor factory implementation. We create a
VSCodeDomDesignerLoader via IVSMDDesignerService::CreateDesignerLoader,
then QI for IVsMDDesignerLoader on the returned ppCodeStream pointer.

Then call IVsMDDesignerLoader::Initialize to tie the loader to the text
buffer. This stuff isn't really doc'd, but you can find some comments on
these interfaces in the vsmanaged.idl.

We then call IVsMDDesignerService::CreateDesigner and then
IVSMDDesigner::get_View to retrieve the IUnknown we'll return as the
ppunkDocView of our editor.

Sincerely,
Ed Dore [MSFT]

This post is 'AS IS' with no warranties, and confers no rights.

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.