Visual Studio extension to accelerate Xamarin.Forms XAML development
When writing code in C# you get a lot of help from the language and IDEs keeping you from making a bunch of kinds of mistakes. Type safety stops a lot of potential bugs from making it past the Compile step. The refactoring support for C# is pretty slick as well. Move code around, rename stuff, change namespaces, and it all gets sorted out quickly.
But when working in XAML, that’s mostly gone. There isn’t a lot of checking that happens during the build, even with XAML compilation turned on. Bugs in XAML end up getting debugged at runtime. This means a much slower bug fix process than an equivalent bug in C# would have. Some of these bugs end up causing crashes, so they’re pretty easy to spot once you run your app and get to the right page. Others, like mistyping identifier names in Bindings, can just silently fail.
XamRight aims to solve these issues. It gives you those little squiggly lines to tell you something’s wrong while editing your Xamarin.Forms XAML. Install it, and it’ll start doing its thing. It keeps working in the background, and you can have it analyze your entire project to make sure everything is clean before you commit your changes.
Get a richer, safer Xaml coding experience with XamRight
Find Data Binding bugs during code editing, not while debugging
Prevent Data Binding bugs and more!
XamRight Feature Overview
- Binding expressions
Xaml error checking
- over 100 rules for a wide variety of correctness bugs and best practices
Advanced Xaml ToolTips
- Hover in Xaml gives important context about view models, properties, styles, and markup extensions
Code Navigation from Xaml
- From Binding to View Model or Property
- From Resource use to ResourceDictionary definition
- From custom class use to class definition
- And more!
Code editing automation
- Safely add Rows and Columns to Grids
- Quickly add positioning to children of AbsoluteLayout
- Wrap Xaml elements in container element
- Insert new view model property from Xaml
Why? XamRight brings C# and Xaml closer together
Developing Xaml-based apps requires writing code in two languages: C# and Xaml. These two languages interact closely at runtime, but the experience of developing in the two languages doesn’t always feel that way.
Coding in C# with Visual Studio has powerful features that are limited or missing for Xaml coding, such as:
- Detecting misspelled identifiers during code editing
- Intellisense for identifier names
- Making sure types are used correctly
- Navigating between identifier references and definitions
Refactoring is a common task in C# development. But refactoring a view model is much trickier when Xaml is in the picture. It’s easy to make sure all references to refactored classes and properties are correct in C#. Unfortunately it’s also easy to miss some in Xaml.
XamRight delivers those features, giving a more seamless coding experience between C# and Xaml, revealing all of the connections between them in the editor, giving you safer refactoring and preventing bugs.
XamRight uses advanced analysis that evaluates how your app uses view models to give you intellisense when writing Binding expressions, and lets you know if you’re trying to reference a property that doesn’t exist. If you want to add that property to the view model, XamRight can do that for you too.
In addition, XamRight has over a hundred checks it applies to your C# and Xaml code to ensure it will run correctly and efficiently, helping you make the best use of your time. These rules cover both Xaml-specific rules as well as problems that can arise in Xamarin.Android or Xamarin.iOS code.
XamRight does this all with no configuration, adapting itself to your coding style and MVVM patterns.