-1
Я пытаюсь связывать TextColor
с ярлыка на ViewCell
:Связывание с IValueConverter не работает
Label myLabel = new Label { Text = "SomeText" };
myLabel.SetBinding(Label.TextColorProperty,
new Binding("TheTextColor", BindingMode.TwoWay, new LabelTextColorConverter()));
Вот преобразователь:
public class LabelTextColorConverter : IValueConverter
{
public bool OldValue { get; set; }
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
OldValue = (bool) value;
Debug.WriteLine("asdadasdsadsada");
if ((bool)value)
return Color.Red;
else
return Color.Silver;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
Debug.WriteLine("qwqweqewqeeqe");
return OldValue;
}
}
Выход отладки не отображается, и цвет тоже не меняется. Я не вижу ничего плохого.
Без [хорошего, _minimal_, _complete_ кода примера] (https://stackoverflow.com/help/mcve) было бы невозможно сказать, что не так. Я скажу, что из вашего примера кода кажется, что вы привязываетесь к экземпляру «Label», который на самом деле не является вашим пользовательским интерфейсом (т. Е. Вы создаете его на лету и не прикрепляете его нигде), и вы привязываетесь к неправильному путь свойства (должен быть «TextColor», а не «TheTextColor»). –
Это короткая версия кода. Я не посылаю сюда, у меня есть другой пользовательский интерфейс для кода, а остальные свойства из viewModel отлично работают, например TextProperty. Текст с ярлыка черный, поэтому условный преобразователь и преобразователь не работают. Выше этого связывания у меня есть: 'myLabel.SetBinding (Label.TextProperty,« TheNames »);' Он отлично работает ... –
Пожалуйста, прочитайте ссылку, которую я предоставил, чтобы понять, что означает «хороший, _minimal_, _complete_ code пример ", а также информацию о том, почему такой пример кода требуется. Прочтите https://stackoverflow.com/help/how-to-ask для получения дополнительной информации о том, как представить свой вопрос ясным, ответным путем. –