Domanda

Sto usando Amcharts e il loro seriarchart combinato con un linegraph. L'ho fatto funzionare in questo modo:

 <amq:SerialChart x:Name="_24HoursLineGraph" DataSource="{Binding Data}" CategoryValueMemberPath="Date"
                     AxisForeground="White"
                     PlotAreaBackground="Black"
                     GridStroke="DarkGray" Grid.Row="1" Margin="20">
        <amq:SerialChart.Graphs>
            <amq:LineGraph ValueMemberPath="Close" Title="Close" Brush="Blue" />

        </amq:SerialChart.Graphs> 
    </amq:SerialChart>

Codice dietro:

public ObservableCollection<Currency> Data { get { return _data; } }

    private ObservableCollection<Currency> _data = new ObservableCollection<Currency>(){};

void SetContext(Item[] itemArray)
{
    _data = new ObservableCollection<Item>();    
                foreach (var item in itemArray)
                {
                    _data.Add(item);
                }
                _data.OrderByDescending(i => i.Date);

                this.DataContext = this;
}

Non capisco come posso prendere di mira il datacontext del linegraph invece di impostare il datacontext dell'intero perno? Ho tre grafici in tre diversi elementi pivot e ho bisogno di impostare il datacontext di essi individualmente. Quindi invece voglio fare qualcosa di simile:

_24HoursLineGraph.DataContext = theDataContext;

Ma questo non funziona. Ho anche provato ad accedere al linegraph stesso con _24Hourslinegraph.graphs [0] .DataContext ma non funziona neanche.

Eventuali suggerimenti?

È stato utile?

Soluzione

I grafici rapidi sono progettati per scenari semplici con una sola fonte di dati per più grafici. L'uso di origini dati completamente separate per ciascun grafico non è supportato in grafici rapidi.

Nel tuo caso dovrai unire tutte le tue fonti di dati in una sola e quindi impostare ValueMemberPath su ciascun grafico su un rispettivo nome di proprietà nei tuoi dati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top