This example is fine, but we need to be able to display a little more than just the last image captured by the camera. We need to be able to display messages, such as what the interval is set to, and a message if there is an error writing to the SD card.

To accommodate this message area, we need to abandon our SimpleGraphics interface to the display and use something called WPFWindow.

WPFWindow is a class that allows us to structure the screen into various different areas. In this case, the whole screen as one area to display the image, and a small area near the top of the screen, where sometimes a message will appear.

We are going to modify the “Spy Camera Test” project to display a little notification at the top of the screen whenever a photo is taken.

This program is now over 100 lines long, so you will probably want to open the “Spy Camera Test” project now.

Creating a UI Structure

The biggest change to the project is the way the display is used. This is all contained in a new method called SetupUI (UI for User Interface). This method would normally appear in the code just after ProgramStarted:

void SetupUI() { mainWindow = display.WPFWindow; // setup the layout Canvas layout = new Canvas(); Border background = new Border(); background.Background = new SolidColorBrush(Colors.Black); background.Height = 240; background.Width = 320; layout.Children.Add(background); Canvas.SetLeft(background, 0); Canvas.SetTop(background, 0); // add the image display imageDisplay = new Border(); ...

Get Getting Started with .NET Gadgeteer now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.