Инкремент "PropertyInfo SetValue" - PullRequest
0 голосов
/ 08 ноября 2018

Это мой код:

        Enemy ble = new Enemy();
        PropertyInfo prop = ble.GetType().GetProperty("x");
        prop.SetValue(ble,20, null);
        Console.WriteLine(prop.GetValue(ble));

class Enemy
{
    public int x { get; set; } = 20;
}

Как вы можете видеть, у меня есть класс Enemy, и я уже узнал, как найти это свойство "x" и изменить его значение на значение, в моем примере 20, но мой вопрос заключается в том, как я могу увеличить или например, уменьшить его значение на 2?

1 Ответ

0 голосов
/ 08 ноября 2018

Вы уже использовали GetValue() и SetValue(), получите его значение, добавьте к нему, а затем снова установите новое значение:

prop.SetValue(ble,(int)prop.GetValue(ble) + 2, null);
...