I'm new to automating webpage access, so forgive what is probably a remedial question.  I'm using C#/Windows.Forms in a console app.  I need to programmatically enter the value of an input on a webpage that I cannot modify and that is running javascript. I have successfully opened the page (triggering WebBrowser.DocumentCompleted).  I set browser emulation mode to IE11 (in registry), so scripts run without errors.  When DocumentCompleted() triggers, I am unable to access the document elements without first viewing the document content via MessageBox.Show(), which is clearly not acceptable for my unattended app.  
What do I need to do so that my document elements are accessbile in an unattended session (so I can remove MessageBox.Show() from the code below)? Details below. Thank you.
The input HTML is:
<input class="input-class" on-keyup="handleKeyPress($key)" type="password">
My DocumentCompleted event handler is:
    private static void LoginPageCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
        WebBrowser wb = ((WebBrowser)sender);
        var document = wb.Document;
    // I'm trying to eliminate these 3 lines
        var documentAsIHtmlDocument = (mshtml.IHTMLDocument)document.DomDocument;
        var content = documentAsIHtmlDocument.documentElement.innerHTML;
        MessageBox.Show(content);
        String classname = null;
        foreach (HtmlElement input in document.GetElementsByTagName("input"))
        {
            classname = input.GetAttribute("className");
            if (classname == "input-class")
            {
                input.SetAttribute("value", password);
                break;
            }
        }
   }