как динамически установить свойство имени в атрибутах отображения в silverlight 4

Я хочу динамически указать свойство имени в атрибутах отображения для любого свойства.

на экзамен:

    [Display(Name = "Test")]
    public bool Task1
    {
        get { return this.m_Task1; }
        set
        {
            if (value != this.m_Task1)
            {
                this.m_Task1 = value;
                NotifyPropertyChanged("TaskName");
            }
        }
    }

в этом свойстве я хочу, чтобы свойство имени динамически означало «Тест», и эти значения будут поступать из базы данных. Итак, как я могу динамически указать свойство имени в атрибутах отображения при создании свойства? Может ли кто-нибудь помочь мне найти решение?


person Brijesh Patel    schedule 30.08.2011    source источник
comment
Вы хотите изменить отображаемое имя для всех экземпляров класса?   -  person AnthonyWJones    schedule 30.08.2011
comment
Да для всех свойств моего класса сущностей.   -  person Brijesh Patel    schedule 31.08.2011


Ответы (1)


Попробуй это:

[Display(Name = "Tu edad")]
public int Edad
{
  get { bla, bla...; }
  set { bla, bla...; }
}

public void ChangeEdad()
{
  var TheProperty =
    this.GetType().GetProperties().Where(x => x.Name == "Edad").FirstOrDefault();

  object TheAttribute = 
    TheProperty.GetCustomAttributes(typeof(DisplayAttribute), false)[0];

  DisplayAttribute DA = TheAttribute as DisplayAttribute;
  DA.Name = "Your Age";
}
person NestorArturo    schedule 30.08.2011