Я думаю, это потому, что вы не можете иметь то же значение внутри триггера, на котором основан триггер, и, по сути, SelectedValue
, 'SelectedItem' и SelectedIndex
- это просто разные способы обращения к одному и тому же элементу..
Обратите внимание, если вы добавите цвет фона к триггеру, он будет применен, так что триггер определенно работает.
Я не уверен, какие у вас ограничения, которые вы говоритемешают вам использовать SelectionChanged
, однако я часто вижу, что люди говорят такие вещи, потому что они являются новичками в шаблоне проектирования MVVM, и думают, что это означает, что приложение вообще не должно иметь никакого кода.Это неверно.
Использование MVVM означает, что в выделенном коде не должно быть бизнес-логики.Логика пользовательского интерфейса совершенно приемлема в коде за представлением, и я считаю, что это логика пользовательского интерфейса, поскольку единственное, что он делает, - это изменение пользовательского интерфейса на основе значения пользовательского интерфейса.