dotnet / winforms

Windows Forms is a .NET UI framework for building Windows desktop applications.
MIT License
4.42k stars 984 forks source link

Extend WinForms Designer SDK by Root Designer functionality #9279

Closed KlausLoeffelmann closed 9 months ago

KlausLoeffelmann commented 1 year ago

This is an informative issue targeted at Custom Control and Designer Library providers.

Root Designers are needed in the WinForms Designer, to provide Designer functionality, which are not scoped to a single control, but for a top-level-document. For example, the Forms and UserControl designers in the WinForms Designers are root designers themselves. Root Designer support is also needed, to provide special design support, like for custom Report Designers.

We are primarily tracking this work in our internal WinForms Designer repository. This issue has rather informative purpose, to point our progress and plans, and what breaking changes in contrast to the .NET Framework root designer APIs we will expect.

What are the principal challenges and difference the Designers?

Please read up on the Out-of-process Designer design principles for Control Designers first, to get a basic understanding about the architectural challenges: https://devblogs.microsoft.com/dotnet/custom-controls-for-winforms-out-of-process-designer/

We expect a Designer SDK preview (with API definitions subject to change) in the Visual Studio 17 time-frame.

Note: The work on this is an ongoing process, and we will provide more details when they become available. If you have specific questions around this topic, please get engaged in the discussion for this issue.

GCAronChen commented 10 months ago

Hi @KlausLoeffelmann , is there any progress about this work? Seems you have completed part of works.

Could we try a preview SDK to verify our framework design time features recently?

KlausLoeffelmann commented 9 months ago

We have release a preview of the SDK today which is supporting new APIs for Root Designers. Note, that you'll need Visual Studio 2022 17.9 Preview 3 to be in parity with the APIs.

GCAronChen commented 9 months ago

@KlausLoeffelmann Thanks! BTW, do you have any document or useful information for us to take reference?

KlausLoeffelmann commented 9 months ago

In the making. Let me see, if I can come up with something quick as a starter in the meantime. I need to talk to @adegeo about introducing docs for the SDK, anyway. But it'll be a while, and also happen iteratively.

KlausLoeffelmann commented 9 months ago

Closing this as done. @merriemcgaw FYI, and also note the Twitter discussion about this here: https://x.com/loeffelmann/status/1749612000345485616?s=20

GCAronChen commented 9 months ago

Let me see, if I can come up with something quick as a starter in the meantime.

That sounds great! ok, We will start to investigate it recently.