MaterialSkin
MaterialSkin copied to clipboard
cross platform
I have not used dotnet for 6 years, and so not up to speed.
My question . Can this run on OSX and linux these days ?
hi, im not sure...but i think that microsoft turned .net framework to open source. And in this days make possible run visual studio in iOS. So... i think is possible...
Microsoft didn't open the source of .NET Framework. It was .NET Core, which is an improved version of .NET Framework that is ideal for Server-Side because it doesn't contain WPF and WinForms implementations.
Thank u for Share your knowleague.
@hadi77ir .net core is not an "improved" version of .net framework, it is open source, but it is not the full .net framework. There is not an "ideal" framework for server, bot, .net framework and .net core are great for server side, but .net framework only works on windows platforms, and asp.net core can run on Windows, Linux, Unix (including Mac).
@desarrollo03TR It was posted one year ago, at that time I knew very little of it. But it is intended for server applications, as it has no GUI component out-of-the-box.
Ok so MaterialSkin does not work with .NET Core because it uses WinForms. But could it be cross platform with Mono? Someone has already tested?
The answer is NO because WinForms don't work with Mono on Mac OS X 64bit
So much outdated/inaccurate information in this thread...
.NET 6+ (formerly .NET Core) has WinForms and WPF, but this is a .NET Framework 4.6.1 project, so it's not going to work. The .NET Core version of WinForms requires targeting Windows anyway. Oh and MS did release the source for .NET Framework, but it's "source-available" i.e. not licensed for re-use.
There was a WinForms for macOS x86-64, we used it in this now-defunct port of our app. The macOS lead told me in October that the WinForms wrapper had finally been updated for "Apple Silicon" (AArch64), this time on .NET 6. But before then, it had been stagnant for years, and it wasn't working on the latest macOS release because of breaking changes to Cocoa or something.
Mono WinForms on Linux works fine. It's ugly, hard to debug, and its .NET 1.0 idioms increasingly stand out from our type-safe and Span
-filled codebase, but it works.
This library does not work under Mono as of version 0.2.1 because this external function isn't available.
System.EntryPointNotFoundException: AddFontMemResourceEx assembly:<unknown assembly> type:<unknown type> member:(null)
at (wrapper managed-to-native) MaterialSkin.MaterialSkinManager.AddFontMemResourceEx(intptr,uint,intptr,uint&)
at MaterialSkin.MaterialSkinManager.LoadFont (System.Byte[] fontResource) [0x00018] in <1edb00a85b0242a786fb2ad441a7b86e>:0
at MaterialSkin.MaterialSkinManager..ctor () [0x000b3] in <1edb00a85b0242a786fb2ad441a7b86e>:0
at MaterialSkin.MaterialSkinManager.get_Instance () [0x0000a] in <1edb00a85b0242a786fb2ad441a7b86e>:0
https://github.com/IgnaceMaes/MaterialSkin/blob/199fa65616d09c0479767ff3713587a7b595286c/MaterialSkin/MaterialSkinManager.cs#L237-L238