Class SfSegmentedControl
The SegmentedControl allows users explore and switch among different views. It provides a simple way to choose from a linear set of two or more segments, each of which functions as a mutually exclusive button.
Inheritance
Namespace: Syncfusion.XForms.Buttons
Assembly: Syncfusion.Buttons.XForms.dll
Syntax
public class SfSegmentedControl : View, IParentThemeElement, IThemeElement
Constructors
SfSegmentedControl()
Initializes a new instance of the SfSegmentedControl class. This is a constructor of the SfSegmentedControlclass.
Declaration
public SfSegmentedControl()
Fields
AutoScrollSelectedItemProperty
Identifies the AutoScrollSelectedItem bindable property. This property can be used to enable or disable the scrolling when selected index changed in the SfSegmentedControl.
Declaration
public static readonly BindableProperty AutoScrollSelectedItemProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
BackgroundColorProperty
Identifies the BackgroundColor bindable property.
Declaration
public static readonly BindableProperty BackgroundColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
BorderColorProperty
Identifies the BorderColor bindable property. This property can be used to change the color of the border for the SfSegmentedControl.
Declaration
public static readonly BindableProperty BorderColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
BorderThicknessProperty
Identifies the BorderThickness bindable property. This property can be used to change the thickness of the border for the SfSegmentedControl.
Declaration
public static readonly BindableProperty BorderThicknessProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
ColorProperty
Identifies the Color bindable property. This property can be used to change the color of segments for the SfSegmentedControl.
Declaration
public static readonly BindableProperty ColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
CornerRadiusProperty
Identifies the CornerRadius bindable property. This property can be used to get the rounded corner for the border of the SfSegmentedControl.
Declaration
public static readonly BindableProperty CornerRadiusProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
DisabledTextColorProperty
Identifies the DisabledTextColor bindable property. This property can be used to change the text color of disabled segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty DisabledTextColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
DisplayModeProperty
Identifies the DisplayMode bindable property. This property can be used to change the display mode of the SfSegmentedControl.
Declaration
public static readonly BindableProperty DisplayModeProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontAttributesProperty
Identifies the FontAttributes bindable property. This property can be used to change the attributes for the font of text in segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontAttributesProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontColorProperty
Identifies the FontColor bindable property. This property can be used to change the foreground color for text of segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontFamilyProperty
Identifies the FontFamily bindable property. This property can be used to change the font family of the text of segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontFamilyProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontIconFontColorProperty
Identifies the FontIconFontColor bindable property. This property can be used to change the foreground color for icons in segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontIconFontColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontIconFontFamilyProperty
Identifies the FontIconFontFamily bindable property. This property can be used to change the font family for the icons in segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontIconFontFamilyProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontIconFontSizeProperty
Identifies the FontIconFontSize bindable property. This property can be used to change the size of icons in segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontIconFontSizeProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
FontSizeProperty
Identifies the FontSize bindable property. This property can be used to change the attributes for the font of text in segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty FontSizeProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
ItemsSourceProperty
Identifies the ItemsSource bindable property.
Declaration
public static readonly BindableProperty ItemsSourceProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
ScrollToPositionProperty
Identifies the ScrollToPosition bindable property.
Declaration
public static readonly BindableProperty ScrollToPositionProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentBackgroundColorProperty
Identifies the SegmentBackgroundColor bindable property. This property can be used to change the background of segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentBackgroundColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentBorderColorProperty
Identifies the SegmentBorderColor bindable property. This property can be used to change the color for border between segment items in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentBorderColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentBorderThicknessProperty
Identifies the SegmentBorderThickness bindable property. This property can be used to change the thickness for segment border in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentBorderThicknessProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentCornerRadiusProperty
Identifies the SegmentCornerRadius bindable property. This property can be used to change the corner radius value for the segment items available in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentCornerRadiusProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentHeightProperty
Identifies the SegmentHeight bindable property. This property can be used to customize the height of the segments in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentHeightProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentPaddingProperty
Identifies the SegmentPadding bindable property. This property can be used to change the padding for segment in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentPaddingProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SegmentWidthProperty
Identifies the SegmentWidth bindable property. This property can be used to customize the width of the segments in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SegmentWidthProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SelectedIndexProperty
Identifies the SelectedIndex bindable property. This property can be used to change the index of the selected item of the SfSegmentedControl.
Declaration
public static readonly BindableProperty SelectedIndexProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SelectionAnimationDurationProperty
Identifies the SelectionAnimationDuration bindable property. This property can be used to change padding for segments in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SelectionAnimationDurationProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SelectionIndicatorSettingsProperty
Identifies the SelectionIndicatorSettings bindable property. This property can be used to customaize the selection indicator of SelectionIndicatorSettings.
Declaration
public static readonly BindableProperty SelectionIndicatorSettingsProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
SelectionTextColorProperty
Identifies the SelectionTextColor bindable property. This property can be used to change the text color of the selected segment in the SfSegmentedControl.
Declaration
public static readonly BindableProperty SelectionTextColorProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
VisibleSegmentsCountProperty
Identifies the VisibleSegmentsCount bindable property. This property can be used to show the segment items based on the VisibleSegmentCount.
Declaration
public static readonly BindableProperty VisibleSegmentsCountProperty
Field Value
| Type |
|---|
| Xamarin.Forms.BindableProperty |
Properties
AutoScrollSelectedItem
Gets or sets a value indicating whether to enable the auto scrolling when selected index is changed in SfSegmentedControl.
Declaration
public bool AutoScrollSelectedItem { get; set; }
Property Value
| Type |
|---|
| System.Boolean |
BackgroundColor
Gets or sets the color of segments for SfSegmentedControl.
Declaration
public Color BackgroundColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
BorderColor
Gets or sets the value of BorderColor. This property can be used to change the color of the border for the SfSegmentedControl.
Declaration
public Color BorderColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
BorderThickness
Gets or sets the value of the BorderThickness. This property can be used to change the thickness of the border for the SfSegmentedControl.
Declaration
public double BorderThickness { get; set; }
Property Value
| Type |
|---|
| System.Double |
Color
Gets or sets the value of Color. This property can be used to change the color of segments for the SfSegmentedControl.
Declaration
public Color Color { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
CornerRadius
Gets or sets the corner radius value for the border of the SfSegmentedControl. This CornerRadius property is used when drawing rounded corners.
Declaration
public double CornerRadius { get; set; }
Property Value
| Type |
|---|
| System.Double |
DisabledTextColor
Gets or sets the value of DisabledTextColor. This property can be used to change the text color of disabled segment items in the SfSegmentedControl.
Declaration
public Color DisabledTextColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
DisplayMode
Gets or sets the value of type SegmentDisplayMode to define the display mode of the SfSegmentedControl. Default value is Text.
Declaration
public SegmentDisplayMode DisplayMode { get; set; }
Property Value
| Type |
|---|
| SegmentDisplayMode |
FontAttributes
Gets or sets the value of FontAttributes. This property can be used to change the attributes for the font of text in the segment items in the SfSegmentedControl.
Declaration
public FontAttributes FontAttributes { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.FontAttributes |
FontColor
Gets or sets the value of FontColor. This property can be used to change the foreground color for text of segment items in the SfSegmentedControl.
Declaration
public Color FontColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
FontFamily
Gets or sets the value of FontFamily. This property can be used to change the font family of the text of segment items in the SfSegmentedControl.
Declaration
public string FontFamily { get; set; }
Property Value
| Type |
|---|
| System.String |
FontIconFontColor
Gets or sets the value of FontIconFontColor. This property can be used to change the foreground color for icons in segment items in the SfSegmentedControl.
Declaration
public Color FontIconFontColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
FontIconFontFamily
Gets or sets the value of FontIconFontFamily. This property can be used to change the font family for the icons in segment items in the SfSegmentedControl.
Declaration
public string FontIconFontFamily { get; set; }
Property Value
| Type |
|---|
| System.String |
FontIconFontSize
Gets or sets the value of FontIconFontSize. This property can be used to change the size of icons in segment items in the SfSegmentedControl.
Declaration
public double FontIconFontSize { get; set; }
Property Value
| Type |
|---|
| System.Double |
FontSize
Gets or sets the value of FontSize. This property can be used to change the font size for the text of segment items and change the attributes for the font of text in segment items in the SfSegmentedControl.
Declaration
public double FontSize { get; set; }
Property Value
| Type |
|---|
| System.Double |
ItemsSource
Gets or sets children for SfSegmentedControl through the collection of SfSegmentItem or collection of strings or views.
Declaration
public IEnumerable ItemsSource { get; set; }
Property Value
| Type |
|---|
| System.Collections.IEnumerable |
ScrollToPosition
Gets or sets a value for positioning the selected index at a specific position when AutoScrollSelectedItem is set to true.
Declaration
public ScrollToPosition ScrollToPosition { get; set; }
Property Value
| Type |
|---|
| ScrollToPosition |
SegmentBackgroundColor
Gets or sets the value of the background color for the segment items in the SfSegmentedControl.
Declaration
public Color SegmentBackgroundColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
SegmentBorderColor
Gets or sets the value of SegmentBorderColor. This property can be used to change the color for border between segment items in the SfSegmentedControl.
Declaration
public Color SegmentBorderColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
SegmentBorderThickness
Gets or sets the value of SegmentBorderThickness. This property can be used to change the thickness for segment border in the SfSegmentedControl.
Declaration
public double SegmentBorderThickness { get; set; }
Property Value
| Type |
|---|
| System.Double |
SegmentCornerRadius
Gets or sets the corner radius value for the segment items available in SfSegmentedControl.
Declaration
public double SegmentCornerRadius { get; set; }
Property Value
| Type |
|---|
| System.Double |
SegmentHeight
Gets or sets the value of the SegmentHeight. This property can be used to customize the height of the segments in the SfSegmentedControl.
Declaration
public double SegmentHeight { get; set; }
Property Value
| Type |
|---|
| System.Double |
SegmentPadding
Gets or sets the value of SegmentPadding. This property can be used to change the padding for segments in the SfSegmentedControl.
Declaration
public double SegmentPadding { get; set; }
Property Value
| Type |
|---|
| System.Double |
SegmentWidth
Gets or sets the value of the SegmentWidth. This property can be used to customize the width of the segments in the SfSegmentedControl.
Declaration
public double SegmentWidth { get; set; }
Property Value
| Type |
|---|
| System.Double |
SelectedIndex
Gets or sets the value of SelectedIndex. This property can be used to change the index of the selected item of the SfSegmentedControl.
Declaration
public int SelectedIndex { get; set; }
Property Value
| Type |
|---|
| System.Int32 |
SelectionAnimationDuration
Gets or sets the duration for the animation of selection strip SfSegmentedControl.
Declaration
public double SelectionAnimationDuration { get; set; }
Property Value
| Type |
|---|
| System.Double |
SelectionIndicatorSettings
Gets or sets value of type SelectionIndicatorSettings to cusomize the selection indicator of SelectionIndicatorSettings, Selection indicator is a strip indicating the selected item of SfSegmentedControl.
Declaration
public SelectionIndicatorSettings SelectionIndicatorSettings { get; set; }
Property Value
| Type |
|---|
| SelectionIndicatorSettings |
SelectionTextColor
Gets or sets the value of SelectionTextColor. This property can be used to change the text color of the selected segment in the SfSegmentedControl.
Declaration
public Color SelectionTextColor { get; set; }
Property Value
| Type |
|---|
| Xamarin.Forms.Color |
VisibleSegmentsCount
Gets or sets a value to show the segments in available space in the SfSegmentedControl.
Declaration
public Nullable<int> VisibleSegmentsCount { get; set; }
Property Value
| Type |
|---|
| System.Nullable<System.Int32> |
Methods
OnBindingContextChanged()
Set children BindingContext when SfSegmentedControl BindingContext changed.
Declaration
protected override void OnBindingContextChanged()
OnMeasure(Double, Double)
On the base OnMeasure and returns SizeRequest based on the Parent.
Declaration
protected override SizeRequest OnMeasure(double widthConstraint, double heightConstraint)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Double | widthConstraint | Width constraint. |
| System.Double | heightConstraint | Height constraint. |
Returns
| Type | Description |
|---|---|
| Xamarin.Forms.SizeRequest | The measure. |
OnParentSet()
On Parent set.
Declaration
protected override void OnParentSet()
OnSizeAllocated(Double, Double)
Ons the size allocated.
Declaration
protected override void OnSizeAllocated(double width, double height)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Double | width | It is actual Width of control. |
| System.Double | height | It is actual Height of control. |
ScrollTo(Int32, ScrollToPosition)
Scroll the segment item based on the given index and ScrollToPosition.
Declaration
public void ScrollTo(int index, ScrollToPosition scrollToPosition)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | index | Index. |
| ScrollToPosition | scrollToPosition | Scroll to position. |
ScrollTo(Object, ScrollToPosition)
Scroll to the segment item based on the provided segment item and Xamarin.Forms.ScrollToPosition.
Declaration
public void ScrollTo(object item, ScrollToPosition scrollToPosition)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Object | item | Item. |
| ScrollToPosition | scrollToPosition | Scroll to position. |
Events
SelectionChanged
The SelectionChanged event is hooked when the selected index of the SfSegmentedControl is changed.
Declaration
public event EventHandler<SelectionChangedEventArgs> SelectionChanged
Event Type
| Type |
|---|
| System.EventHandler<SelectionChangedEventArgs> |