Я просто создаю простой пример, когда я хочу включить/отключить Switchcell (с именем switch2), включив/выключил другую коммутационную ячейку (с именем switch1). Я использую метод привязки. Я пробовал этот код с элементом «Entry» (пытается отключить его), и он отлично работает, но с свойством IsEnabledProperty от «switchcell» кажется, что он не работает. (Я не использую Xaml, я использую PCL). Xamarin Forms обновлена до последней версии (2.3.0.49). Является ли это проблемой Xamarin? Вот код:Переключение Xamarin Switchcell IsEnabledPropery не работает?
BindingContext = new DetailsViewModel();
SwitchCell switch1 = new SwitchCell()
{
Text = "Switch",
};
switch1.SetBinding(SwitchCell.OnProperty, new Binding("Test", BindingMode.TwoWay));
SwitchCell switch2 = new SwitchCell()
{
Text = "Visibilita",
};
switch2.SetBinding(SwitchCell.IsEnabledProperty, "Test");
и здесь является DetailsViewModel.cs:
public class DetailsViewModel : INotifyPropertyChanged
{
bool test;
public bool Test
{
get { return test; }
set
{
if (test != value)
{
test = value;
OnPropertyChanged("Test");
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
var changed = PropertyChanged;
if (changed != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
Спасибо, я пробовал без привязки, и он не работает. Есть ли обходной путь? –