using System;
using System.ComponentModel;
using System.Resources;
namespace Developpez.Dotnet.ComponentModel
{
///
/// Permet de spécifier une description localisée pour un élément de code (type, propriété, évènement...)
///
public class LocalizedDescriptionAttribute : DescriptionAttribute
{
private readonly string _resourceKey;
private readonly ResourceManager _resourceManager;
///
/// Initialise une nouvelle instance de la classe LocalizedDescriptionAttribute.
///
/// Clé de la ressource localisée qui contient la description
/// Type qui permet de trouver les ressources localisées
public LocalizedDescriptionAttribute(string resourceKey, Type resourceType)
{
_resourceKey = resourceKey;
_resourceManager = new ResourceManager(resourceType);
}
///
/// Obtient la description localisée définie par cet attribut.
///
public override string Description
{
get
{
return _resourceManager.GetString(_resourceKey);
}
}
}
}