How can I convert a string so that the first character of each word is uppercase and the rest of the characters lowercase? : <p>So far I have this code that converts every character to uppercase:</p>

<pre><code>    public string Header
    {
        get
        {
            var value = (string)GetValue(HeaderProperty);
            return !string.IsNullOrEmpty(value) ? value.ToUpper() : value;
        }
        set
        {
            SetValue(HeaderProperty, value);
        }
    }
</code></pre>

<p>But I would like to just convert the first character of each word. Is there any function that would allow me to do this?</p>
