CollectionView クラスは、.NET と類似の ICollectionView インタフェースを介してグループ化をサポートしています。グループ化を有効にするには、1 つ以上の GroupDescription オブジェクトを CollectionView.GroupDescription プロパティに追加します。GroupDescription オブジェクトは柔軟であり、値またはグループ化関数に基づいてデータをグループ化できます。次のコードは GroupChanged イベントと SortChanged イベントを使用して、Sunburst チャートでグループ化操作を実行します。
次の図は、Sunburst チャートコントロールでグループ化を設定する方法を示します。
次のコード例は、C# と XAML を使用してこれらのプロパティを設定する方法を示します。この例では、「クイックスタート」セクションで作成したデータを使用します。
XAML |
コードのコピー
|
---|---|
<Grid Margin="10"> <c1:C1Sunburst x:Name="sunburst" Binding="Value"> <c1:C1Sunburst.DataLabel> <c1:PieDataLabel Position="Center" Content="{}{name}"> <c1:PieDataLabel.Style> <c1:ChartStyle StrokeThickness="0"/> </c1:PieDataLabel.Style> </c1:PieDataLabel> </c1:C1Sunburst.DataLabel> </c1:C1Sunburst> </Grid> |
C# |
コードのコピー
|
---|---|
public partial class MainPage : ContentPage { private static C1CollectionView<Item> cv; public MainPage() { InitializeComponent(); Title = "SunBurst Chart"; DataService model = new DataService(); cv = DataService.CreateGroupCVData(); cv.GroupChanged += View_GroupChanged; cv.SortChanged += Cv_SortChanged; } private void Cv_SortChanged(object sender, System.EventArgs e) { GroupDescription yearGroupDescription = new GroupDescription("Year"); GroupDescription quarterGroupDescription = new GroupDescription("Quarter"); GroupDescription monthGroupDescription = new GroupDescription("MonthName"); GroupDescription[] groupDescriptions = new GroupDescription[] { yearGroupDescription, quarterGroupDescription, monthGroupDescription }; cv.GroupAsync(groupDescriptions); } private void View_GroupChanged(object sender, System.EventArgs e) { this.sunburst.ItemsSource = cv; this.sunburst.Invalidate(); } } |