I'm having a problem getting the selected value from a DropDownList that uses an ArrayList as a DataSource. When I select a year and click on the submit button, I get the following error message:

Object reference not set to an instance of an object.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

I'm not understanding why this isn't working. The years (1900 - 1993) are getting populated into the DropDownList without a problem, but on the btnSubmit_Click job gets submitted, I get that error. And and all help would be appreciated. Hopefully it's something simple that I'm missing.

Here's the code I'm using:

VB.NET CODE-BEHIND:
Code:
'Assign date variables
    Dim dtCurrDate As DateTime = DateTime.Now 'Assign current date
    Dim intCurrYear As Integer = DateTime.Now.Year 'Assign current year
    Dim intVotingYear As Integer = intCurrYear - 18 'Assign voting year

Sub Page_Load(ByVal Sender As Object, ByVal E As EventArgs) Handles Me.Load

    If Not Page.IsPostBack Then 'loads with page

            'Declare an array for the dynamic dropdownlist
            Dim colArrayList As New System.Collections.ArrayList()

            'Declare loop variables
            Dim i As Integer = 1900
            Dim intDisplayYear As Integer = i

            'Loop through years
            For i = 1900 To intVotingYear
                colArrayList.Add(i)
                colArrayList.TrimToSize()
                colArrayList.Sort() 'Sort years
                colArrayList.Reverse() 'Reverse sort/descending order
            Next

            'Bind data
            ddlYear.DataSource = colArrayList
            ddlYear.DataBind()

            'Add a new listitem to the beginning of the dropdownlist
            ddlYear.Items.Insert(0, New ListItem("- Year -", "")) 'Text, value
            ddlYear.SelectedIndex = ddlYear.Items.IndexOf(ddlYear.Items.FindByText(Session("SelectedYear")))

        End If

End Sub

Sub btnSubmit_Click(ByVal Sender As Object, ByVal E As EventArgs)

    'Declare form variables
    Dim strFormYear As String = ddlYear.SelectedItem.Text '<<<<-----THIS IS WHERE I GET THE ERROR

    'NOTE: I've also tried changing the above line to:
    'Dim strFormYear As String = ddlYear.SelectedItem.Value
    '...but that resulted in the same error.

    'Declare session variables
    Session("SelectedYear") = dob_year_form

    If Page.IsValid Then
        Try...
        ...
    End If

End Sub
ASP.NET PAGE:
Code:
<form id="form1" method="post" runat="server">

    <asp:DropDownList id="ddlYear" runat="server"></asp:DropDownList>

    <asp:Button ID="btnSubmit" Text="Submit" OnClick="btnSubmit_Click" runat="server" />

</form>