.NET Core 3 Feedback

Posted by: kelley.ricker on 22 January 2019, 1:54 am EST

  • Posted 22 January 2019, 1:54 am EST

    Please report any issues you experience with .NET Core 3.0 in this thread to help us address any issues that you may encounter.

    If you're interested in trying to use .NET Core 3.0 but haven't tried to yet, we have a guide that demonstrates how to use .NET Core 3.0 with our WinForms controls:

    https://www.grapecity.com/en/blogs/get-started-with-c1-winforms-and-dotnet-core

    Feel free to provide any feedback related to using .NET Core 3.0 with our WinForms controls in this thread.

    Kelley Ricker
    XAML Product Manager
  • Replied 22 January 2019, 1:55 am EST

    If you've experienced a problem with C1FlexGrid where it needs System.Drawing.Design.UITypeEditorEditStyle in System.Drawing, we have an open case with Microsoft that you can follow on GitHub:

    https://github.com/dotnet/winforms/issues/270

    We will update this thread with the resolution, but you can also participate with that particular problem via the GitHub thread.
  • Replied 15 October 2019, 5:29 am EST

    I already have a support ticket open (ID : 401746), but I found this thread so I thought I might post it here as somebody may run into the same issue!

    The win forms version of C1FlexGrid in the latest available version (20192.1.375) is not compatible with the official release of the .NET Core 3.0 SDK (3.0.100).

    If you install the official release of the .NET Core 3.0 SDK (3.0.100) and run the sample application in the C1 blog post linked below, and try to open the Subtotals form, you will get a crash in the C1FlexGridBase constructor.

    After decompiling the latest C1.Win.C1FlexGrid.4.dll, I can see the following logic at the site of the crash, which is the get accessor of "C1FlexGridBase.UseCompatibleTextRenderingDefault":

    return (bool) typeof (Control).GetField(nameof (UseCompatibleTextRenderingDefault), BindingFlags.Static | BindingFlags.NonPublic).GetValue((object) null); 



    If you take a look at Control.cs, line 299 of the official .NET Foundation WinForms source, you can see that the Control.UseCompatibleTextRenderingDefault value is now a property, and not a field:

    internal static bool UseCompatibleTextRenderingDefault { get; set; } = true;


    This was changed by a contributor on 30th July. You can see the commit at the link below (look in Control.cs changes and search for "UseCompatibleTextRenderingDefault").


    The logic in C1FlexGridBase.UseCompatibleTextRenderingDefault.get() is not compatible with the latest .NET Core 3.0 SDK as GetField() does not enumerate property information.


    Useful links:

    ComponentOne sample application (bottom of blog post):
    https://www.grapecity.com/blogs/winforms-and-dotnet-core-3

    Control.cs source (see line 299): https://github.com/dotnet/winforms/blob/master/src/System.Windows.Forms/src/System/Windows/Forms/Control.cs

    Breaking Change:
    https://github.com/dotnet/winforms/commit/ba7e4bf0d5967ee2a3cbd0ebfaca54eed7a84061

    I hope we see a fix soon!

    Cheers,

    Sam
  • Replied 15 October 2019, 10:18 pm EST

    Hi Sam,

    Thank you for bringing it to the forums such that community can benefit.
    The behavior you mention is an issue and the developers are working over to fix it [ID: 401707].
    We' ll update the thread once the fix gets released.

    Best wishes,
    Ruchir
Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels