|
<syncfusion:SfListView x:Name="listView" ItemSize="60" ItemsSource="{Binding ContactsInfo}">
<syncfusion:SfListView.ItemTemplate >
<DataTemplate>
<Grid x:Name="grid">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="70" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="70" />
</Grid.ColumnDefinitions>
<Image Source="{Binding ContactImage}" VerticalOptions="Center" HorizontalOptions="Center" HeightRequest="50" WidthRequest="50"/>
<Grid Grid.Column="1" RowSpacing="1" Padding="10,0,0,0" VerticalOptions="Center">
<Label LineBreakMode="NoWrap" TextColor="#474747" Text="{Binding ContactName}"/>
<Label Grid.Row="1" Grid.Column="0" TextColor="#474747" LineBreakMode="NoWrap" Text="{Binding ContactNumber}"/>
</Grid>
<checkbox:SfCheckBox IsChecked="{Binding IsChecked, Mode=TwoWay}" Grid.Column="2" StateChanged="SfCheckBox_StateChanged"/>
</Grid>
</DataTemplate>
</syncfusion:SfListView.ItemTemplate>
</syncfusion:SfListView> |
|
private void SfCheckBox_StateChanged(object sender, Syncfusion.XForms.Buttons.StateChangedEventArgs e)
{
var currentIndex = listView.DataSource.DisplayItems.IndexOf((sender as SfCheckBox).BindingContext as Contacts);
if (e.IsChecked == true)
{
viewModel.ContactsInfo.Move(currentIndex, listView.DataSource.DisplayItems.Count-1);
}
} |
|
public Rapida()
{
InitializeComponent();
viewModel.ContactsInfo = App.DAUtil.GetAllRapidas();
listaRapida.ItemsSource = viewModel.ContactsInfo;
}
|