From de5d3e0df93e873c35ccc0e82df9e3c4df9305eb Mon Sep 17 00:00:00 2001 From: Anandh-SF4665 Date: Wed, 10 Sep 2025 17:22:44 +0530 Subject: [PATCH] Updated the README.md file --- README.md | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 147 insertions(+) diff --git a/README.md b/README.md index fffa246..4285951 100644 --- a/README.md +++ b/README.md @@ -1 +1,148 @@ **[View document in Syncfusion .NET MAUI Knowledge Base](https://www.syncfusion.com/kb/13080/how-to-change-selected-image-in-net-maui-listview-sflistview)** + +## Sample + +```xaml + + + + + + + . . . + . . . + + + + + + + + +C#: + +ListView.SelectionChanged += ListView_SelectionChanged; + +private void ListView_SelectionChanged(object sender, ItemSelectionChangedEventArgs e) +{ + if (ListView.SelectionMode == Syncfusion.Maui.ListView.SelectionMode.Multiple) + { + SelectionViewModel.HeaderInfo = ListView.SelectedItems.Count + " item(s) selected"; + for (int i = 0; i < e.AddedItems.Count; i++) + { + var item = e.AddedItems[i]; + (item as Musiqnfo).IsSelected = true; + } + for (int i = 0; i < e.RemovedItems.Count; i++) + { + var item = e.RemovedItems[i]; + (item as Musiqnfo).IsSelected = false; + } + + if (ListView.SelectedItems.Count == SelectionViewModel.MusicInfo.Count) + SelectionViewModel.IsAllSelected = true; + else + SelectionViewModel.IsAllSelected = false; + } +} + +private void selectAllIconTapped_Tapped() +{ + if (ListView.SelectedItems.Count == SelectionViewModel.MusicInfo.Count) + { + this.ListView.SelectedItems.Clear(); + } + else + { + this.ListView.SelectAll(); + } + + UpdateSelectionTempate(null, true); +} + +public void UpdateSelectionTempate(ItemLongPressEventArgs args = null, bool tappedSelectAll = false) +{ + if (ListView.SelectedItems.Count > 0 || args != null) + { + ListView.SelectionMode = Syncfusion.Maui.ListView.SelectionMode.Multiple; + if (!tappedSelectAll) + ListView.SelectedItems.Clear(); + if (args != null) + { + var currentItem = args.DataItem as Musiqnfo; + if (currentItem != null) + { + currentItem.IsSelected = true; + this.ListView.SelectedItems.Add(currentItem); + } + } + SelectionViewModel.HeaderInfo = ListView.SelectedItems.Count + " item(s) selected"; + + if (tappedSelectAll) + { + if (ListView.SelectedItems.Count == SelectionViewModel.MusicInfo.Count) + { + for (int i = 0; i < SelectionViewModel.MusicInfo.Count; i++) + { + var item = SelectionViewModel.MusicInfo[i]; + (item as Musiqnfo).IsSelected = true; + } + + SelectionViewModel.IsAllSelected = true; + } + } + + } + else + { + SelectionViewModel.HeaderInfo = "0 item(s) selected"; + for (int i = 0; i < SelectionViewModel.MusicInfo.Count; i++) + { + var item = SelectionViewModel.MusicInfo[i]; + (item as Musiqnfo).IsSelected = false; + } + SelectionViewModel.IsAllSelected = false; + } +} + +public class IconColorConverter : IValueConverter +{ + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + if ((bool)value) + return Color.FromArgb("#1a75ff"); + else + return Color.FromArgb("#b3b3b3"); + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } +} + +public class SelectionIconConverter : IValueConverter +{ + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + if ((bool)value) + return "\ue748"; + else + return "\ue718"; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } +} +```