Using .NET Bio with Windows Store apps

We recently published .NET Bio 1.1 (see bio.codeplex.com) and included a version for Mono in the source tree which allows you to use C# and .NET Bio but run the applications on Linux or Mac machines when Windows just isn’t available.  You can even use Xamarin Studio to build the apps which is quite cool.  [Check out the Bio.Mono solution in the source code on codeplex for that project!]

Lately, I’ve spent a lot of time in Windows Store land building Windows Store apps – so I thought I’d try to port the Mono version over to the newer WinRT environment.  I had to modify the parser infrastructure and I currently only have FASTA running right now but I do have a version running as a WSA.  As a test I build a quick and dirty sequence visualizer – it prompts you for a FASTA file, loads it into a sequence array using .NET Bio and then renders out the sequences using a RichTextBlock:

It is using a SemanticView control and when you “zoom out” of the visualization, it presents the same data as a bitmap:

To accomplish this, it generates a WritableBitmap and colors in pixels based on nucleotide values.  Since this was not a sanctioned effort (I just wanted to play), I didn’t upload the changed code to the bio project, but will instead include it here with this post so anyone else who wants to play with it can take the source code and do whatever they like.  Just a warning to other early adopters: I haven’t tested a lot of this code, it’s a quick and dirty effort!  Next, I plan to add in some support for alignments and then calling BLAST services.

The Bio.Metro project has full source code and no dependencies on other libraries.  The sample test program also uses my MVVM library for Metro which was added via NuGet.

Here’s the code

Have fun!

About Mark Smith

Windows systems developer with low-level operating system, threading and .NET experience. For the past several years I have been involved with WPF/Silverlight and most recently iOS and Android.

I have worked as an architect and designer for several companies and am particularly interested in client/server and graphical solutions.

Specialties:.NET, WPF, Silverlight, Windows, iOS