I am newbie to wpf and to this sort of programming in general. I have an example from Sams' WPF 4 Unleashed to which I am unable to set the background. I show it here greatly simplified and in VB.NET:

Imports System.Windows
Imports System.Windows.Media
Imports System.Windows.Input

Namespace WTH
   Class Application
      <STAThread()> _
      Public Shared Sub Main()
         Dim whv As New WTH.WindowHostingVisual
      End Sub
   End Class

   Public Class WindowHostingVisual
      Inherits Window

      Private visuals As New List(Of Visual)()

      Public Sub New()
         Title = "Hosting DrawingVisuals"
         Width = 400
         Height = 400
         WindowStartupLocation = Windows.WindowStartupLocation.CenterScreen
         Background = Brushes.Aquamarine
         Dim visLine As New DrawingVisual()
         Using dc As DrawingContext = visLine.RenderOpen()
            dc.DrawLine(New Pen(Brushes.White, 5), New Point(50, 200), New Point(350, 200))
         End Using
      End Sub

      Protected Overrides ReadOnly Property VisualChildrenCount() As Integer
            Return visuals.Count
         End Get
      End Property

      Protected Overrides Function GetVisualChild(index As Integer) As Visual
         If index < 0 OrElse index >= visuals.Count Then
            Throw New ArgumentOutOfRangeException("index")
         End If
         Return visuals(index)
      End Function

   End Class
End Namespace

Using XAML is what I want to avoid. Otherwise, what's the point of programming if I can't change things when and as I want. When I use the standard files created Automatically by VS 2010 Express for WPF, I can change the background just fine through the Window or the Grid. Here is the empty XAML version I am using now:

<Application x:Class="Application"

When I comment out the two overrides in my code, the background changes, but nothing is drawn.

I have tried everything, so please save me from suicide.