Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ The Syncfusion® Toolkit is built with community collaboration in mind, aiming t
| | Funnel Charts | Represent processes and data flow, often used in sales and analytics. |
| | Polar Charts | Showcase categories in a circular format, ideal for unordered data. |
| | Pyramid Charts | Visualize hierarchical data, perfect for business and analytics applications. |
| | Spark Charts | Display trends using micro charts like line, column, area, and win-loss. Ideal for compact data summaries. |
| | Sunburst Charts | Visualize hierarchical data using concentric circles, ideal for multi-level category data. |
| Calendars | Calendar | The calendar supports month, year, decade, and century views, multiple selection modes, and customizable appearance. |
| Editors | Date Picker | User interface element for selecting specific dates. |
| | Date Time Picker | Combined interface to select dates and times. |
Expand Down Expand Up @@ -64,7 +66,7 @@ The Syncfusion® Toolkit is built with community collaboration in mind, aiming t

## Installation

You can install the [Syncfusion Toolkit for .NET MAUI](https://www.nuget.org/packages/Syncfusion.Maui.Toolkit) via NuGet:
You can install the [Syncfusion® Toolkit for .NET MAUI](https://www.nuget.org/packages/Syncfusion.Maui.Toolkit) via NuGet:

```
dotnet add package Syncfusion.Maui.Toolkit
Expand Down
2 changes: 2 additions & 0 deletions maui/samples/Gallery/ControlList.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,5 +26,7 @@
<Assembly Name="OtpInput" />
<Assembly Name="ProgressBar" />
<Assembly Name="Picker" />
<Assembly Name="SunburstChart" />
<Assembly Name="SparkChart" />
</Assemblies>
</SampleBrowser>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions maui/samples/Gallery/SampleList/CartesianChartSamplesList.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<SyncfusionControls>
<ControlCategory Name="Data Visualization">
<Control Title="Cartesian Charts" ControlName="SfCartesianChart" StatusTag="Updated" Image="cartesianchart.png" Description="Plot over 20+ chart types with extensive features like data label, trackball and zooming.">
<Control Title="Cartesian Charts" ControlName="SfCartesianChart" Image="cartesianchart.png" Description="Plot over 20+ chart types with extensive features like data label, trackball and zooming.">
<Category Title="Chart Types">
<SubCategory Title="Column">
<CardLayout>
Expand Down Expand Up @@ -167,7 +167,7 @@
<Sample Title="Numerical" SampleName="NumericalAxisChart" SearchTags="numeric, axis"/>
<Sample Title="Logarithm" SampleName="LogarithmicAxisChart" SearchTags="logarithmic, axis"/>
<Sample Title="Date Time" SampleName="DateTimeAxisChart" SearchTags="date, axis"/>
<Sample Title="Date time category" SampleName="DateTimeCategoryAxis" SearchTags="date, category, axis" StatusTag="New" Description="This sample demonstrates a comparison of sales revenue using a date-time category axis."/>
<Sample Title="Date time category" SampleName="DateTimeCategoryAxis" SearchTags="date, category, axis" Description="This sample demonstrates a comparison of sales revenue using a date-time category axis."/>
<Sample Title="Axis crossing" SampleName="AxisCrossing" SearchTags="axis, crossing" />
</Category>

Expand Down
6 changes: 3 additions & 3 deletions maui/samples/Gallery/SampleList/CircularChartSamplesList.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<SyncfusionControls>
<ControlCategory Name="Data Visualization">
<Control Title="Circular Charts" ControlName="SfCircularChart" StatusTag="Updated" Image="circularchart.png" Description="Visualize the data using pie, doughnut and radial bar series.">
<Control Title="Circular Charts" ControlName="SfCircularChart" Image="circularchart.png" Description="Visualize the data using pie, doughnut and radial bar series.">
<Category Title="Type">

<SubCategory Title="Pie">
Expand All @@ -12,13 +12,13 @@
<Sample SearchTags="smart datalabels" Name="SmartDataLabelsChart" Platforms="Windows,Android,iOS" SampleName="SmartDataLabels" Title="Smart data labels"/>
</CardLayout>
</SubCategory>
<SubCategory Title="Doughnut" StatusTag="New">
<SubCategory Title="Doughnut">
<CardLayout>
<Sample SearchTags="Doughnut" Name="DoughnutChart" SampleName="DoughnutChart" Title="Default doughnut"/>
<Sample SearchTags="SemiDoughnut" Name="SemiDoughnutChart" SampleName="SemiDoughnutChart" Title="Semi-doughnut chart" Description="This sample shows how to create a semi-doughnut using start and end angles."/>
<Sample SearchTags="GroupToDoughnt" Name="GroupToDoughnt" SampleName="GroupToDoughnutChart" Title="Grouping"/>
<!--<Sample SearchTags="CenterElevation" Name="CenterElevation" SampleName="CenterElevation" Title="Center elevation"/>-->
<Sample SearchTags="CapStyle, Curved Edge, GapRatio, Spacing" StatusTag="New"
<Sample SearchTags="CapStyle, Curved Edge, GapRatio, Spacing"
Name="DoughnutChartWithCurvedEdge"
SampleName="DoughnutChartWithCurvedEdge"
Title="Curved edge and spacing"
Expand Down
6 changes: 3 additions & 3 deletions maui/samples/Gallery/SampleList/OtpInputSamplesList.xml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<SyncfusionControls>
<ControlCategory Name="Editors">
<Control Title="Otp Input" ControlName="OtpInput" Image="otpinput.png" Description="Allows users to enter one-time passwords (OTP) securely and efficiently." StatusTag="New">
<Sample Title="Sign Up" SampleName="SignUpPage" StatusTag="New" SearchTags="otpinput,entry,textbox,signup"/>
<Sample Title="Customization" SampleName="Customization" StatusTag="New" SearchTags="otpinput,entry,textbox" Description="This sample demonstrates how to customize OTP" />
<Control Title="Otp Input" ControlName="OtpInput" Image="otpinput.png" Description="Allows users to enter one-time passwords (OTP) securely and efficiently.">
<Sample Title="Sign Up" SampleName="SignUpPage" SearchTags="otpinput,entry,textbox,signup"/>
<Sample Title="Customization" SampleName="Customization" SearchTags="otpinput,entry,textbox" Description="This sample demonstrates how to customize OTP" />

</Control>
</ControlCategory>
Expand Down
12 changes: 4 additions & 8 deletions maui/samples/Gallery/SampleList/PickerSamplesList.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,36 +5,32 @@
<Control Title="Picker"
Image="picker.png"
ControlName="SfPicker"
StatusTag="Updated"
Description="A versatile UI element designed for making selections from a set of options.">
<Sample Title="Getting Started" SampleName="GettingStarted" StatusTag="Updated" WhatsNew="Provided looping support for .NET MAUI Picker control"/>
<Sample Title="Getting Started" SampleName="GettingStarted"/>
<Sample Title="Flight booking" SampleName="FlightBooking"/>
</Control>

<Control Title="Date Picker"
Image="datepicker.png"
ControlName="SfDatePicker"
StatusTag="Updated"
Description="A user interface element for selecting specific dates.">
<Sample Title="Getting Started" SampleName="GettingStarted" StatusTag="Updated" WhatsNew="Provided looping support for .NET MAUI Date picker control."/>
<Sample Title="Getting Started" SampleName="GettingStarted"/>
<Sample Title="To-Do" SampleName="Customization"/>
</Control>

<Control Title="Time Picker"
Image="timepicker.png"
ControlName="SfTimePicker"
StatusTag="Updated"
Description="An interface for choosing specific times of day.">
<Sample Title="Getting Started" SampleName="GettingStarted" StatusTag="Updated" WhatsNew="Provided looping support for .NET MAUI Time picker control."/>
<Sample Title="Getting Started" SampleName="GettingStarted"/>
<Sample Title="Alarm" SampleName="Customization"/>
</Control>

<Control Title="Date Time Picker"
Image="datetimepicker.png"
ControlName="SfDateTimePicker"
StatusTag="Updated"
Description="A combined interface to select dates and times.">
<Sample Title="Getting Started" SampleName="GettingStarted" StatusTag="Updated" WhatsNew="Provided looping support for .NET MAUI Date Time picker control."/>
<Sample Title="Getting Started" SampleName="GettingStarted"/>
</Control>

</ControlCategory>
Expand Down
9 changes: 9 additions & 0 deletions maui/samples/Gallery/SampleList/SparkChartSamplesList.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<SyncfusionControls>
<ControlCategory Name="Data Visualization">
<Control Title="Spark Charts" StatusTag="New" ControlName="SfSparkChart" Description="Visualize data in a lightweight view." Image="sparklinechart.png">
<Sample Title="Getting started" SampleName="ChartTypes" SearchTags="spark, sparkline ,sparkline chart, charts, sparkarea, sparkcolumn, sparkwinloss"/>
<Sample Title="Sales Report" SampleName="SalesReport" SearchTags="spark, sparkline ,sparkline chart, charts, sparkarea, sparkcolumn, sales report, sparkwinloss"/>
</Control>
</ControlCategory>
</SyncfusionControls>
14 changes: 14 additions & 0 deletions maui/samples/Gallery/SampleList/SunburstChartSamplesList.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<SyncfusionControls>
<ControlCategory Name="Data Visualization">
<Control Title="Sunburst Chart" StatusTag="New" Image="sunburstchart.png" ControlName="SfSunburstChart" Description="Visualize hierarchical data using concentric circles with interactive features.">
<Sample SearchTags="sunburst" Name="SunburstChart" SampleName="DefaultSunburstChart" Title="Getting started" />
<Sample SearchTags="datalabel" Name="Datalabel" SampleName="DataLabel" Title="Data label" />
<Sample SearchTags="tooltip" Name="Tooltip" SampleName="ToolTip" Title="Tooltip" />
<!--<Sample SearchTags="centerview" Platforms="Windows,Android,iOS," Name="Centerview" SampleName="CenterView" Title="Center elevation"/>-->
<Sample SearchTags="selection" Name="Selection" SampleName="Selection" Title="Selection"
Description="This sample depicts the selection feature in the chart. On mobile, tap the segment, and on desktop, click the segment to select or deselect them." />
</Control>
</ControlCategory>
</SyncfusionControls>

2 changes: 1 addition & 1 deletion maui/samples/Gallery/SampleList/TabViewSamplesList.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<Sample Title="Getting Started" SampleName="TabViewGettingStarted" Description="This sample shows a simple use case of the Tab View." SearchTags="tabs, tab view, tabbed view, navigation"/>
<Sample Title="Fit To Content" SampleName="SizeToContent" Description="This sample shows how to display the tabs based on the each tabs text size." SearchTags="tabs, tab view, tabbed view, autofit, auto, sizetofit, tab width"/>
<Sample Title="Customization" SampleName="Customization" SearchTags="tabs, tab view, tabbed view, customization"/>
<Sample Title="Center Button" SampleName="CenterButton" SearchTags="tabs, tab view, tabbed view, center button" StatusTag="New"/>
<Sample Title="Center Button" SampleName="CenterButton" SearchTags="tabs, tab view, tabbed view, center button" />
</Control>
</ControlCategory>
</SyncfusionControls>
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ namespace Syncfusion.Maui.ControlsGallery.BottomSheet.BottomSheet
{
public class BottomSheetBehavior : Behavior<SampleView>
{
ListView? _listView;
CollectionView? _collectionView;
ItemViewModel? _itemViewModel;
SfBottomSheet? _bottomSheet;
SfEffectsViewAdv? _decreaseQuantity;
Expand All @@ -21,8 +21,8 @@ public class BottomSheetBehavior : Behavior<SampleView>
/// <param name="bindable">SampleView type parameter named as bindable.</param>
protected override void OnAttachedTo(SampleView bindable)
{
_listView = bindable.FindByName<ListView>("ListView");
_listView.ItemTapped += ListView_ItemTapped;
_collectionView = bindable.FindByName<CollectionView>("CollectionView");
_collectionView.SelectionChanged += _collectionView_SelectionChanged;
_itemViewModel = new ItemViewModel();
bindable.BindingContext = _itemViewModel;
_bottomSheet = bindable.FindByName<SfBottomSheet>("BottomSheet");
Expand Down Expand Up @@ -52,6 +52,23 @@ protected override void OnAttachedTo(SampleView bindable)
base.OnAttachedTo(bindable);
}

private void _collectionView_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
if (e.CurrentSelection.FirstOrDefault() is Item selectedItem)
{
if (_bottomSheet is not null && grid is not null)
{
grid.BindingContext = selectedItem;
if (_bottomSheet.IsOpen)
{
_bottomSheet.State = BottomSheetState.HalfExpanded;
}

_bottomSheet.Show();
}
}
}

private void ExtraTwo_CheckedChanged(object? sender, CheckedChangedEventArgs e)
{
if (_extraTwo is not null && _bottomSheet is not null && grid is not null)
Expand Down Expand Up @@ -96,21 +113,6 @@ private void OnStateChanged(object? sender, StateChangedEventArgs e)
}
}

private void ListView_ItemTapped(object? sender, ItemTappedEventArgs e)
{
var selectedItem = (Item)e.Item;
if (_bottomSheet is not null && grid is not null)
{
grid.BindingContext = selectedItem;
if (_bottomSheet.IsOpen)
{
_bottomSheet.State = BottomSheetState.HalfExpanded;
}

_bottomSheet.Show();
}
}

private void OnDecreaseTapped(object? sender, TappedEventArgs e)
{
if (_bottomSheet is not null && grid is not null)
Expand Down Expand Up @@ -146,7 +148,7 @@ private void OnCloseIconTapped(object? sender, TappedEventArgs e)
/// <param name="bindable">SampleView type parameter named as bindable</param>
protected override void OnDetachingFrom(SampleView bindable)
{
_listView = null;
_collectionView = null;
_itemViewModel = null;
base.OnDetachingFrom(bindable);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,31 +21,29 @@
<local:ItemViewModel />
</Grid.BindingContext>

<BottomSheet:SfBottomSheet x:Name="BottomSheet" BottomSheetContentWidth="450" ContentWidthMode="Custom" HalfExpandedRatio="{OnPlatform WinUI=0.5, MacCatalyst=0.43}" FullExpandedRatio="0.9" CollapsedHeight="180" Background="{AppThemeBinding Light={StaticResource SampleBrowserBackgroundLight}, Dark={StaticResource SampleBrowserBackgroundDark}}" CornerRadius="10, 10, 0, 0" ContentPadding="16,16,16,0">
<BottomSheet:SfBottomSheet x:Name="BottomSheet" BottomSheetContentWidth="450" ContentWidthMode="Custom" HalfExpandedRatio="{OnPlatform WinUI=0.5, MacCatalyst=0.43}" FullExpandedRatio="0.9" CollapsedHeight="180" Background="{AppThemeBinding Light={StaticResource SampleBrowserBackgroundLight}, Dark={StaticResource SampleBrowserBackgroundDark}}" CornerRadius="10, 10, 0, 0" ContentPadding="16,16,16,0" >
<BottomSheet:SfBottomSheet.Content>
<Grid>
<ListView x:Name="ListView" ItemsSource="{Binding Items}" RowHeight="120" Grid.Row="1" SeparatorVisibility="None" BackgroundColor="{AppThemeBinding Light={StaticResource BackgroundLight}, Dark={StaticResource BackgroundDark}}">
<ListView.ItemTemplate>
<CollectionView x:Name="CollectionView" ItemsSource="{Binding Items}" Grid.Row="1" BackgroundColor="{AppThemeBinding Light={StaticResource BackgroundLight}, Dark={StaticResource BackgroundDark}}" SelectionMode="Single">
<CollectionView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid ColumnDefinitions="auto, *, 50" ColumnSpacing="0" Padding="16">
<Border StrokeThickness="0">
<Border.StrokeShape>
<RoundRectangle CornerRadius="10" />
</Border.StrokeShape>
<Image Source="{Binding ImageName}" />
</Border>
<VerticalStackLayout Grid.Column="1" Spacing="2" Padding="16,0,0,0">
<Label Text="{Binding FoodName}" FontSize="20" FontAttributes="Bold" FontFamily="Roboto"/>
<Label Text="{Binding SubName}" FontSize="16" FontFamily="Roboto" TextColor="{AppThemeBinding Light={StaticResource TileTextColourLight}, Dark={StaticResource TileTextColourDark}}"/>
<Label Text="{Binding Description}" FontSize="12" LineBreakMode="TailTruncation" MaxLines="2" Opacity="0.5" FontFamily="Roboto" TextColor="{AppThemeBinding Light={StaticResource TextColourAlt1Light},Dark={StaticResource TextColourAlt1Dark}}"/>
</VerticalStackLayout>
<Label Text="{Binding Price, StringFormat='${0}'}" FontAttributes="Bold" FontSize="20" FontFamily="Roboto" VerticalOptions="Center" HorizontalOptions="Center" Grid.Column="2" />
</Grid>
</ViewCell>
<Grid ColumnDefinitions="auto, *, 50" ColumnSpacing="0" Padding="16" HeightRequest="120">
<Border StrokeThickness="0">
<Border.StrokeShape>
<RoundRectangle CornerRadius="10" />
</Border.StrokeShape>
<Image Source="{Binding ImageName}" />
</Border>
<VerticalStackLayout Grid.Column="1" Spacing="2" Padding="16,0,0,0">
<Label Text="{Binding FoodName}" FontSize="20" FontAttributes="Bold" FontFamily="Roboto"/>
<Label Text="{Binding SubName}" FontSize="16" FontFamily="Roboto" TextColor="{AppThemeBinding Light={StaticResource TileTextColourLight}, Dark={StaticResource TileTextColourDark}}"/>
<Label Text="{Binding Description}" FontSize="12" LineBreakMode="TailTruncation" MaxLines="2" Opacity="0.5" FontFamily="Roboto" TextColor="{AppThemeBinding Light={StaticResource TextColourAlt1Light},Dark={StaticResource TextColourAlt1Dark}}"/>
</VerticalStackLayout>
<Label Text="{Binding Price, StringFormat='${0}'}" FontAttributes="Bold" FontSize="20" FontFamily="Roboto" VerticalOptions="Center" HorizontalOptions="Center" Grid.Column="2" />
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</CollectionView.ItemTemplate>
</CollectionView>
</Grid>
</BottomSheet:SfBottomSheet.Content>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,10 @@

<BottomSheet:SfBottomSheet.Content>
<Grid>
<ListView x:Name="ListView" BackgroundColor="{AppThemeBinding Light={StaticResource BackgroundLight}, Dark={StaticResource BackgroundDark}}" ItemsSource="{Binding Items}" RowHeight="105" Grid.Row="1" SeparatorVisibility="None" >
<ListView.ItemTemplate>
<CollectionView x:Name="CollectionView" BackgroundColor="{AppThemeBinding Light={StaticResource BackgroundLight}, Dark={StaticResource BackgroundDark}}" ItemsSource="{Binding Items}" Grid.Row="1" SelectionMode="Single" >
<CollectionView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid ColumnDefinitions="auto, *, 50" ColumnSpacing="0" Padding="16">
<Grid ColumnDefinitions="auto, *, 50" ColumnSpacing="0" Padding="16" HeightRequest="105">
<Border StrokeThickness="0">
<Border.StrokeShape>
<RoundRectangle CornerRadius="10" />
Expand All @@ -38,10 +37,9 @@
</VerticalStackLayout>
<Label Text="{Binding Price, StringFormat='${0}'}" FontAttributes="Bold" FontSize="20" FontFamily="Roboto" VerticalOptions="Center" HorizontalOptions="Center" Grid.Column="2" />
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</CollectionView.ItemTemplate>
</CollectionView>
</Grid>
</BottomSheet:SfBottomSheet.Content>

Expand Down
Loading