2013-05-06 3 views
1

В моем приложении WPF у меня есть следующий запрос, чтобы отобразить выбранный диапазон дат как «Дата» и общее количество обрабатываемых серверов в каждый день в качестве «Сумма».Как отобразить следующий результат в таблице WPF

var query_1 = 

    (this.db.Servers 
    .Where(a => (a.Date >= fromDP.SelectedDate.Value && a.Date <= toDP.SelectedDate.Value) 
    && ((a.ServerID == "ServerID1" || a.ServerID == "ServerID2") && a.Type == "Complete")) 
    .GroupBy(a => EntityFunctions.TruncateTime(a.Date)) 
    .OrderBy(a => a.Key) 
    .Select(g => new { Date = g.Key, Amount = g.Count() })) 
    .ToList(); 

, которая возвращает результат следующим образом при связываются с ItemsSource поле со списком (в просто проверить, работает ли запрос правильно)

Result

Теперь, как связать этот результат, Дата и Сумма в таблицу WPF. Ось X и Y. (X-ось для даты и Y-оси для суммы).

В таблице могут быть серии Bubble Series/Line Series или Column.

+0

Для этого вам необходим элемент управления диаграммой. Там есть несколько коммерческих. Лично я не знаю никакого свободного решения, которое поддерживает привязку данных. – metacircle

+0

Я использую управление диаграммой инструментов WPF на данный момент. мой вопрос заключается в том, как привязать значения на рисунке 1 к элементу управления диаграммой – user1221765

ответ

1

Этот блогпост может иметь то, что вам нужно.

http://www.itdevspace.com/2010/09/wpf-toolkit-datagrid-chart-example.html

В основном Вам разместить информацию, которую вы извлекать из вашего запроса LINQ в коллекцию как список у вас есть (пример в блоге выше использования и ObservableCollection возможно для целей уведомления), а затем Схема ItemSource свойство коллекции, IndependentValue к дате и DependentValue к сумме.

<charting:LineSeries 
    ItemsSource="{Binding Path=Data}" 
    IndependentValueBinding="{Binding Date}" 
    DependentValueBinding="{Binding Amount}"/> 

Я не пробовал это на анонимные типы, так вы можете нуждаться, чтобы изменить логику запроса, чтобы быть более явным. Вышеупомянутый код xaml ожидает, что DataContext будет иметь коллекцию по имени Данные, содержащие элементы с датой и суммой свойств.

+0

выглядит хорошо .thanks – user1221765

Смежные вопросы