Есть задача, нужно в RUN-Time устанавливать параметры визуальных компонентов. Если коротко о задаче — то нужно отстраивать интерфейс, описание которого лежит в БД и грузится при запуске приложения и переходе с формы на форму. Проблема в том что прописывать switch для каждого компонента (или даже для группы компонентов), мне кажется, не очень красиво... относительно сохранения в XML — тоже отпадает по тому, что забивать эти данные юзер в БД будет ручками. Да ещё тонкость прога для КПК. Уважаемые форумчане подскажите, есть ли какая нибудь возможность получать доступ на запись к свойствам объекта по его имени ??? То есть хочется в базе хранить в формате ID|Name|Value Заранее спасибо
Здравствуйте, DmitryMS, Вы писали:
DMS>See reflection, object.GetType().GetProperty("PropertyName")/object.GetType().SetProperty(instance, "PropertyName");
Спасибо за совет, GetProperty() работает, а вот SetProperty() он говорит что не знает, и в MSDN в этом толком ни чего не написано... подскажете, пожалуйста, как до SetProperty() докопаться ??? Заранее спасибо !!!
Здравствуйте, Roamer_KDN, Вы писали:
R_K>Здравствуйте, DmitryMS, Вы писали:
DMS>>See reflection, object.GetType().GetProperty("PropertyName")/object.GetType().SetProperty(instance, "PropertyName");
R_K>Спасибо за совет, GetProperty() работает, а вот SetProperty() он говорит что не знает, и в MSDN в этом толком ни чего не написано... подскажете, пожалуйста, как до SetProperty() докопаться ??? Заранее спасибо !!!
прально потомучта его и нет (у Type) человек суток погарячился
Ну что чушь-то советуете?
R_K>Спасибо за совет, GetProperty() работает, а вот SetProperty() он говорит что не знает, и в MSDN в этом толком ни чего не написано... подскажете, пожалуйста, как до SetProperty() докопаться ??? Заранее спасибо !!!
Вам немного неправильно подсказали. Метод GetProperty() вернёт не значение свойства, а объект описывающий свойство. У этого объекта нужно дёргать SetValue()/GetValue().
Здравствуйте, vitz, Вы писали:
V>Здравствуйте, Roamer_KDN, Вы писали:
R_K>>Здравствуйте, DmitryMS, Вы писали:
DMS>>>See reflection, object.GetType().GetProperty("PropertyName")/object.GetType().SetProperty(instance, "PropertyName");
R_K>>Спасибо за совет, GetProperty() работает, а вот SetProperty() он говорит что не знает, и в MSDN в этом толком ни чего не написано... подскажете, пожалуйста, как до SetProperty() докопаться ??? Заранее спасибо !!!
V>прально потомучта его и нет (у Type) человек суток погарячился V>
V>public PropertyInfo GetProperty (
V> string name
V>)
V>Вот с PropertyInfo и работай
PropertyInfo (так же как FieldInfo, MethodInfo и т.п.) просматриваю уже несколько часов... но на Set так и не наткнулся... подскажите плз. где копать... спасибо
Re[5]: C# Доступ к свойствам обекта по имени
От:
Аноним
Дата:
08.05.07 14:45
Оценка:
R_K>PropertyInfo (так же как FieldInfo, MethodInfo и т.п.) просматриваю уже несколько часов... но на Set так и не наткнулся...
Для начала стоит повернуться к монитору лицом. Потом смотреть здесь — PropertyInfo.SetValue()?
Здравствуйте, Аноним, Вы писали:
R_K>>PropertyInfo (так же как FieldInfo, MethodInfo и т.п.) просматриваю уже несколько часов... но на Set так и не наткнулся...
А>Для начала стоит повернуться к монитору лицом. Потом смотреть здесь — PropertyInfo.SetValue()?
Не был бы уважаемый Анонимом влепил бы ПЯЦЬ, браво!!!
Здравствуйте, Аноним, Вы писали:
DMS>>>See reflection, object.GetType().GetProperty("PropertyName")/object.GetType().SetProperty(instance, "PropertyName");
А>Ну что чушь-то советуете?
R_K>>Спасибо за совет, GetProperty() работает, а вот SetProperty() он говорит что не знает, и в MSDN в этом толком ни чего не написано... подскажете, пожалуйста, как до SetProperty() докопаться ??? Заранее спасибо !!!
А>Вам немного неправильно подсказали. Метод GetProperty() вернёт не значение свойства, а объект описывающий свойство. У этого объекта нужно дёргать SetValue()/GetValue().
Спасибо, помогло, правда ArgumentException пишет, но это в MSDN кажется есть...