|
…
this.dataGrid.CellRenderers.Remove("Switch"); this.dataGrid.CellRenderers.Add("Switch", new MySwitchRenderer(DataBaseCollection));
…. public class MySwitchRenderer : GridCellSwitchRenderer {
ObservableCollection<OrderInfo> dataBase;
public MySwitchRenderer(ObservableCollection<OrderInfo> DataBaseCollection)
{
dataBase = DataBaseCollection;
}
public override void OnInitializeDisplayView(DataColumnBase dataColumn, SfSwitchControl view)
{
base.OnInitializeDisplayView(dataColumn, view);
view.Toggled += View_Toggled;
}
private void View_Toggled(object sender, Xamarin.Forms.ToggledEventArgs e)
{
var item = ((sender as SfSwitchControl).BindingContext as OrderInfo);
if (!dataBase.Contains(item))
{
// DataBase opearion here
// Also change this.dataBase item value to avoid duplicate calling
}
}
} |