Доступ к свойствам внутри propertyinfo - PullRequest
0 голосов
/ 08 мая 2018

Мне нужно установить свойство Value внутри класса BFrame через класс Tag.

Как мне установить свойство Value?

Пояснение:
Я не пытаюсь установить значение свойства Frame внутри класса Tag, но свойство Value объекта Frame свойство типа BFrame.

class BFrame
{
    string Value{get; set;}
}

class Tag
{
    BFrame Frame{get;}
}

public void func(Tag tag, string newValue)
{
    PropertyInfo frameProperty = tag.GetType().GetProperty("Frame");
    var oldValue = frameProperty.GetValue(tag);
    //frameProperty.SetValue(tag, newValue); //Doesn't work. Throws exception because there is no setter
    //TODO: Set the Value property inside the BFrame class
    //Somethig like this: tag.Frame.Value = newValue;
}

1 Ответ

0 голосов
/ 08 мая 2018

Приведение возвращаемого значения от GetValue до BFrame

var bFrame = (BFrame) frameProperty.GetValue(tag);
bFrame.Value = newValue; 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...