Ich habe ein ObservableCollection
erweitert, hält die Datenpunkte sowie einige zusätzliche InformationenWPF-Chart-Toolkit. Bind Lieferanten-Gehalt in ColumnDataPoint zu Ansichtsmodell Datapoint Property
public class ExtendedCollection : ObservableCollection<KeyValuePair<string, KeyValuePair<string,int>>>
{
}
Dann hält Ich habe auch ein Ansichtsmodell der ColumnSeries
, die diese verwendet ExtendedCollection
private ExtendedCollection columnValues = new ExtendedCollection();
public ExtendedCollection ColumnValues
{
get
{
return columnValues;
}
set
{
columnValues = value;
PropChanged("ColumnValues");
}
}
Schließlich versuche ich, die Sammlungsgegenstände 'Value.Key
auf einem Etikett anzuzeigen, das in jeder Datenpunktspalte
<chartingToolkit:ColumnSeries Name="columnSeries" DependentValuePath="Value.Value" IndependentValuePath="Key" ItemsSource="{Binding ColumnValues}">
<chartingToolkit:ColumnSeries.DataPointStyle>
<Style TargetType="chartingToolkit:ColumnDataPoint">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="chartingToolkit:ColumnDataPoint">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Label Grid.Row="0" Content="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type chartingToolkit:ColumnSeries}},Path=DataContext.ColumnValues.Value.Key, Mode=TwoWay}"></Label>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</chartingToolkit:ColumnSeries.DataPointStyle>
</chartingToolkit:ColumnSeries>
Ich habe viele verschiedene Binding
s für die Label
's Content
versucht, aber keine funktioniert. Wie kann ich einen Link die Content
zum Value.Key
von ColumnDataPoint