ここで私がやろうとしていることです。1 つのチャート コントロールに複数のリスト チャートが必要です。この投稿での Sheog の回答を使用して十分に簡単な問題はありません。
https://stackoverflow.com/a/10604545/1836291
問題は、実行時まで必要なチャートの数がわからないことです。だから私の考えは、それをアイテムコントロールに入れて、データテンプレートを次のように LineSeries として設定することです:
<ItemsControl x:Name="pieChart">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<chartingToolkit:Chart DataContext="{Binding}" Title="Pie Series Demo" Margin="0" Background="#FF48474B" Height="400"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<chartingToolkit:LineSeries DependentValuePath="Value" IndependentValuePath="Key" ItemsSource="{Binding}" IsSelectionEnabled="True" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
そして私のデータ:
List<KeyValuePair<string, int>> valueList = new List<KeyValuePair<string, int>>();
valueList.Add(new KeyValuePair<string, int>("Developer", 60));
valueList.Add(new KeyValuePair<string, int>("Misc", 20));
valueList.Add(new KeyValuePair<string, int>("Tester", 50));
valueList.Add(new KeyValuePair<string, int>("QA", 30));
valueList.Add(new KeyValuePair<string, int>("Project Manager", 40));
List<KeyValuePair<string, int>> valueList2 = new List<KeyValuePair<string, int>>();
valueList2.Add(new KeyValuePair<string, int>("Developer", 40));
valueList2.Add(new KeyValuePair<string, int>("Misc", 40));
valueList2.Add(new KeyValuePair<string, int>("Tester", 40));
valueList2.Add(new KeyValuePair<string, int>("QA", 40));
valueList2.Add(new KeyValuePair<string, int>("Project Manager", 20));
var dataSourceList = new List<List<KeyValuePair<string, int>>>();
dataSourceList.Add(valueList);
dataSourceList.Add(valueList2);
pieChart.DataContext = dataSourceList;
問題はデータバインディングのどこかにあると感じていますが、トラブルシューティングするのに十分な知識がありません。
さて、私はこれを見つけました:
プログラムで ColumnSeries WPF Toolkit チャートを作成する
実際には非常にうまく機能しますが、XAMLでこれを行う方法を知りたいです。
ありがとうございました、