Отображение DevEx XtraGrid в виде диаграммы

#c# #devexpress #devexpress-windows-ui

#c# #devexpress #devexpress-windows-ui

Вопрос:

У меня есть компонент DevEx Xtragrid, отображающий несколько наборов числовых данных. Я хотел бы показать это в виде нескольких рядов на линейном графике. Я хочу переключаться между отображением данных в таблице и на диаграмме одним нажатием кнопки.

Есть ли «простой» способ в DevEx для достижения этой цели?

Ответ №1:

Вы можете создать конкретные пользовательские элементы управления / представления на основе сетки и диаграммы, а затем закрепить оба в одном контейнере (панели). Для переключения режима отображения вы можете использовать следующий код:

 viewGrid.Dock = Dock.Fill;
viewGrid.Visible = true; // show grid initially
viewGrid.Parent = pnlContainer;
viewChart.Dock = Dock.Fill;
viewChart.Visible = false; // hide chart initially
viewChart.Parent = pnlContainer;
// ...
void btn_ToggleView(object sender, EventArgs e){
    bool showChart = viewGrid.Visible;
    viewGrid.Visible = !showChart;
    viewChart.Visible = showChart;
}
  

P.S. DevExpress также предоставляет контейнер Navigation Frame, который содержит несколько страниц и позволяет отображать одновременно только одну из них.

Комментарии:

1. Спасибо, описанный подход был бы тем, к чему я направлялся. Я подумал, что хотел бы спросить, есть ли в devex какие-либо свойства, методы, которые позволяют связать диаграмму и сетку и т.д. Devex настолько многофункциональен и обладает ооочень многими свойствами, что легко не знать о некоторых функциях.

2. Вы абсолютно правы, Dx обладает множеством функций, поэтому, говоря об интеграции диаграммы с таблицей данных, я предлагаю вам ознакомиться с интеграцией с таблицей данных, вертикальной сеткой, древовидным списком или блоком списка через статью ControlRowSource)).