/// <summary>
		/// Initializes the <see cref="ApplicationThemeResourceProviderBase"/>.
		/// </summary>
		/// <param name="id">The string that identifies the theme.</param>
		/// <param name="name">The name of the theme. May be a key to a string resource in an SR table in the same assembly as the implementing type.</param>
		/// <param name="description">A description of the theme. May be a key to a string resource in an SR table in the same assembly as the implementing type.</param>
		/// <param name="icon">A resource name to an icon for the theme in the same assembly as the implementing type. May be NULL or empty if no icon is available.</param>
		/// <exception cref="ArgumentException">Thrown if <paramref name="id"/> is NULL or empty.</exception>
		protected ApplicationThemeResourceProviderBase(string id, string name, string description, string icon)
		{
			Platform.CheckForEmptyString(id, @"id");
			_id = id;
			_name = !string.IsNullOrEmpty(name) ? name : id;
			_description = description ?? string.Empty;
			_icon = icon ?? string.Empty;
			_resourceResolver = new ResourceResolver(GetType(), false);
			_colors = new ApplicationThemeColors(this);
		}
 /// <summary>
 /// Initializes the <see cref="ApplicationThemeResourceProviderBase"/>.
 /// </summary>
 /// <param name="id">The string that identifies the theme.</param>
 /// <param name="name">The name of the theme. May be a key to a string resource in an SR table in the same assembly as the implementing type.</param>
 /// <param name="description">A description of the theme. May be a key to a string resource in an SR table in the same assembly as the implementing type.</param>
 /// <param name="icon">A resource name to an icon for the theme in the same assembly as the implementing type. May be NULL or empty if no icon is available.</param>
 /// <exception cref="ArgumentException">Thrown if <paramref name="id"/> is NULL or empty.</exception>
 protected ApplicationThemeResourceProviderBase(string id, string name, string description, string icon)
 {
     Platform.CheckForEmptyString(id, @"id");
     _id               = id;
     _name             = !string.IsNullOrEmpty(name) ? name : id;
     _description      = description ?? string.Empty;
     _icon             = icon ?? string.Empty;
     _resourceResolver = new ResourceResolver(GetType(), false);
     _colors           = new ApplicationThemeColors(this);
 }