private static void Print(BitmapSource bitmap)
{
var image = new Image();
image.Source = bitmap;
#if SILVERLIGHT
var printDocument = new PrintDocument();
printDocument.PrintPage += (s, e) => { e.PageVisual = image; };
printDocument.Print("Silverlight printed document");
#else
var printDialog = new PrintDialog();
if ((bool)printDialog.ShowDialog())
{
printDialog.PrintVisual(image, string.Empty);
}
#endif
}