public static IAsyncResult SetTextBlockWithKey(TextBlock control, string key, string defaultText)
        {
            if (control == null || key == null)
            {
                throw new ArgumentNullException();
            }

            textControls[control.GetHashCode()] = key;
            return GetTextAsync(key, defaultText, (s) =>
            {
                lock (textControls)
                {
                    if (textControls[control.GetHashCode()] == key)
                    {
                        control.Text = s;
                    }
                }
            });
        }