Как получить курсор из строки без учета регистра (например, "рука" вместо "Рука")?

56
8

У меня есть строковое представление определенного типа курсора мыши в нескольких разных случаях, таких как: "Рука", "рука", "haNd" и т.д.

Как получить правильный Cursor, игнорируя случай строки?

Метод TypeConverter.ConvertFromString не поддерживает параметр StringComparison.

var cursor = CursorConverter().ConvertFromString("hand"); // not "Hand"

спросил(а) 2016-01-15T21:39:00+03:00 4 года, 5 месяцев назад
1
Решение
100

Вы можете использовать отражение, чтобы получить свойство Cursor вы хотите, в то же время игнорируя регистр букв:

var cursor = (Cursor)typeof(Cursors).GetProperty("haNd",
BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Static).GetValue(null);

Проверяя документацию, я не вижу ничего в классе CursorConverter, который позволит вам игнорировать случай.

ответил(а) 2016-01-15T21:55:00+03:00 4 года, 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема