News

OpenSilver Gets Closer to Open Source Parity with Long-Dead Microsoft Silverlight

OpenSilver 1.0 arrived a year ago on the same exact date that Microsoft Silverlight's official support life ended, providing an open source alternative to the developer favorite that effectively died years earlier. Now, it has been updated to v1.1, getting closer to feature parity with the framework it was designed to replace.

Microsoft Silverlight, delivered via a web browser plug-in, enabled interactive media experiences, rich business applications and immersive mobile apps. It was especially useful for rich web applications, with functionality that was similar to Adobe Flash such as playing music, videos, animations and so on.

Silverlight
[Click on image for larger view.] Silverlight (source: Microsoft).

The web-dev framework was so popular that its deprecation caused years-long angst among developers who loved it and felt betrayed when it was killed. It became synonymous with Microsoft's purported practice of investing heavily in a new technology that gains traction among users only to be discontinued, effectively leaving them and many existing projects in the lurch.

That angst was so pervasive that we last year wrote the article, "A Decade Later, .NET Developers Still Fear Being 'Silverlighted' by Microsoft." That was followed up a couple months later with the article, "OpenSilver v1.0 Arrives as Microsoft Ends Silverlight Support."

Now, almost exactly a year on from the official death of Silverlight and birth of OpenSilver, the latter has been updated to v1.1.

The OpenSilver site describes it as a modern, plugin-free, open source reimplementation of Silverlight that can run complex legacy applications as well as newly written C# and XAML applications. Coming from a dev team funded by the company Userware, its development is conducted on GitHub.

Userware's vision is described thusly: "We are .NET developers who believe that Silverlight was the best platform ever for developing line-of-business (LOB) applications. We are sad to see Silverlight die due to the lack of support for plug-ins in modern browsers, so we want to reimplement it using modern, open, and standards-based technologies. We want to make it even more powerful than before, for developers to have the tools to build amazing products that can change the world."

The v1.1 update includes new Xaml updates relating to core features such as animation, bindings, triggers, virtualization and so on, along with improvements to existing Xaml features. Userware said it also boosts performance, fixes many bugs, improves on simulator and VSIX functionality and more.

The XAML Features Section of the OpenSilver Showcase
[Click on image for larger view.] The XAML Features Section of the OpenSilver Showcase (source: Userware).

Specific highlights include:

  • More than 100 new Silverlight features, including:

    • New DataGrid: based on the original code from Microsoft, the new DataGrid is feature-packed and offers pixel-perfect backward compatibility
    • Silverlight Toolkit: most controls are now supported in OpenSilver, including: DataForm, Accordion, AutoCompleteBox, DataPager, LineSeries ...
    • Improved layout system: OpenSilver now supports the "Measure" and "Arrange" Silverlight APIs for creating custom panels and layouts
  • Support for additional third-party libraries, including Telerik UI: While last year's v1.0 release of OpenSilver already supported most of the popular Silverlight libraries, including RIA Services, PRISM, MEF, Unity, OData, MVVM Light and Newtonsoft, the new v1.1 release adds support for more libraries, including:

    • SignalR
    • Caliburn.Micro
    • PostSharp
    • Blacklight Controls
    • Google Protobuf
    • Reactive Extensions
    • MS Expression Interaction/Behaviors
    • Microsoft Enterprise Library
    • 3x improvement in performance over v1.0
  • Telerik UI components that are said to now work flawlessly include (among dozens of others):

    • RadGridView
    • RadRibbon
    • RadScheduleView
    • RadTreeListView
    • RadChart
  • Performance improvements that are said to derive from new features like virtualization, .NET 7 support and several major optimizations. "On average, we improved performance by up to 3 times" said Giovanni Albani, CEO of Userware. "We've observed this while porting Silverlight business apps to OpenSilver for our clients. Some portions of their applications now run even faster in OpenSilver than in their original Silverlight version."

As for what's coming up, one major new feature will be support for VB.NET in the browser, expected to come in OpenSilver 2.0, which is planned for release early next year.

"This will make OpenSilver the only technology out there that supports VB.NET and XAML to build web apps," Albani said. "It will throw a lifeline to the huge number of Visual Basic developers that are out there, and that are sad to see their favorite programming language being progressively abandoned. As we are flooded with requests for assistance to migrate VB.NET Silverlight applications, we believe that this feature will find a lot of interest in the Microsoft developer community."

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube