Inefficient Xamarin.Forms Layouts

Unnecessary attributes and layouts on a Xamarin.Forms page can slow down the performance of your app – https://docs.microsoft.com/en-us/xamarin/xamarin-forms/deploy-test/performance. This guidance has been around for a long time, but we wanted to know what kind of impact it really can have. Putting it to the test We created two similar ListView layouts. The first layout intentionallyContinue reading “Inefficient Xamarin.Forms Layouts”

Tab Retap in Xamarin.Forms, Now With Icons!

A while back, I wrote about how to handle reselecting/retapping of tabs in a Xamarin.Forms TabbedPage (covering iOS and Android in part 1 here and UWP and NavigationPage in part 2 here).  The basic problem is that app designs frequently want to react to a user selecting the already-active tab on a TabbedPage — reselecting,Continue reading “Tab Retap in Xamarin.Forms, Now With Icons!”

XamRight for Xamarin Native Code

Even when developing a cross-platform Xamarin.Forms app, you still often need to write some platform-specific code to get the most out of each platform.  Apart from analyzing Xamarin.Forms Xaml code, the latest version of  XamRight also introduces error checking for Xamarin.Android and Xamarin.iOS C# code. Here we will look at some of the common errorsContinue reading “XamRight for Xamarin Native Code”

Creating View Model Properties with XamRight 1.646

We are thrilled to announce the latest version of XamRight, version 1.646, which has a lot of fixes and improvements across the product, as well as a major feature – creating a new property in the view model when editing the Xaml view. XamRight was developed to recognize a wide variety of ways that viewContinue reading “Creating View Model Properties with XamRight 1.646”

Deep Dive into LayoutOptions in Xamarin.Forms Part 2 (Grids)

In a previous post, I started methodically working through how LayoutOptions work inside different containers.  In this post, that topic is continued, detailing the interactions between LayoutOptions and Grid. While LayoutOptions values on child views of Grids do aid in positioning the views, LayoutOptions values do not have the same amount of control over theContinue reading “Deep Dive into LayoutOptions in Xamarin.Forms Part 2 (Grids)”

Have I Reached the End of my ListView?

Building on a previous post about seeing how a user interacts with a ListView in Xamarin.Forms, the next question is, “Has the user scrolled to the end?”  This can be useful, for instance, if the user is scrolling through a long feed of data, and only a portion is returned at a time.  When theContinue reading “Have I Reached the End of my ListView?”

XamRight v1.597, features and fixes, oh my!

Shout out to all of the people who have been kicking the tires of XamRight!  Despite the all the testing we were able to do prior to our first release, several of our early users ran into some problems.  We’re pleased to announce that the current version of XamRight fixes numerous crashes and annoyances thatContinue reading “XamRight v1.597, features and fixes, oh my!”

Analyzing the Xamarin CRM app with XamRight

The Xamarin CRM demo app is meant to display best practices and how to effectively use some features in using Xamarin Forms in the context of a complete app. We cloned the repo and ran XamRight on the source code (without any modifications) to see what we could find and to demo some XamRight features. Continue reading “Analyzing the Xamarin CRM app with XamRight”

XamRight: Usable Analysis for Xamarin.Forms

As we posted above previously, we’ve been building a tool called XamRight to make us more efficient at developing Xamarin apps.  The entire motivation was based on the fact that we loved a lot about Xamarin development, but ran into some pain points, sometimes over and over… It’s finally here — you can download theContinue reading “XamRight: Usable Analysis for Xamarin.Forms”

LayoutOptions in Xamarin.Forms

From my experience working with Xamarin.Forms layouts, I found using LayoutOptions to be rather confusing. I would throw them around if and when I thought they were appropriate. And more often than not, they produced inaccurate results. While the documentation provided on the Xamarin.Forms website was somewhat helpful, I still made mistakes and used aContinue reading “LayoutOptions in Xamarin.Forms”