Category / Section
How to restrict chip selection in Xamarin
1 min read
This article explains how to restrict the chip selection in Xamarin ChipGroup.
Consider if your requirement is to restrict a specific chip from the selection process, it can be achieved by controlling the selection functionality using the SelectionChanging event Cancel argument.
Note:
It restricts the chip selection when you set Cancel value to true.
Here, users are allowed to select all languages except Java.
XAML
<buttons:SfChipGroup
Type="Filter"
ItemsSource="{Binding Languages}"
SelectedChipBackgroundColor="Red"
ChipPadding="8,8,0,0"
SelectionIndicatorColor="White"
SelectionChanging="SfChipGroup_SelectionChanging"
DisplayMemberPath="Name">
</buttons:SfChipGroup>
C#
private void SfChipGroup_SelectionChanging(object sender, Syncfusion.Buttons.XForms.SfChip.SelectionChangingEventArgs e)
{
if(e.AddedItem != null && (e.AddedItem as Language).Name.Equals("Java"))
{
e.Cancel = true;
}
}
public class ViewModel : INotifyPropertyChanged
{
private ObservableCollection<Language> languages;
public ObservableCollection<Language> Languages
{
get
{
return languages;
}
set
{
languages = value;
OnPropertyChanged("Languages");
}
}
public ViewModel()
{
Languages = new ObservableCollection<Language>();
Languages.Add(new Language () { Name = "C#" });
Languages.Add(new Language () { Name = "HTML" });
Languages.Add(new Language () { Name = "Java" });
Languages.Add(new Language () { Name = "JS" });
}
..
}
Output
See Also:
What are the types available in ChipGroup?
What are the customizations available in ChipGroup?
How to notify selection changes in ChipGroup?
Didn't find an answer?
Contact Support