Вариант 1. Вы можете добавить Label
в Chart
следующим образом:
int lh = (int)(label1.Height / chart1.Height * 100f);
int cw = chart1.Width;
ChartArea CA = chart1.ChartAreas[0];
ElementPosition EP = CA.InnerPlotPosition;
CA.InnerPlotPosition = new ElementPosition(EP.X, EP.Y + lh, EP.Width, EP.Height - lh);
label1.Location = new Point((int)(EP.X * cw / 100f) + 10, 0);
label1.Width = (int)(EP.Width * cw / 100f) - 20;
label1.Height -= 2;
label1.Parent = chart1;
Или вы можете захотеть расположить метку, закрепив ее сверху.
Вы можете оформить Label
по своему вкусу, даже добавить Image
..
Возможно, вам придется поиграть со смещением метки. Высота!
Вариант 2. Вы можете перемещать поле заголовка таким же образом:
chart1.Titles.Add("TiltelBox");
Title T = chart1.Titles[0];
ChartArea CA = chart1.ChartAreas[0];
T.DockedToChartArea = CA.Name;
T.BackColor = Color.Wheat;
T.Docking = Docking.Top;
T.IsDockedInsideChartArea = true;
ElementPosition EP = T.Position;
T.Position = new ElementPosition
(EP.X + 10f, EP.Y -0.5f, EP.Width + 83.5f, EP.Height + 9f);
Опять же: вам нужно будет поиграть с тем, как вы позиционируете заголовок. Вышеупомянутые здесь работают, но вам нужно будет изменить их с помощью диаграммы.
Помните, что ElementPosition использует в качестве единицы измерения 1/100 размера диаграммы; это хорошо, поскольку масштабируется, но сначала его сложно настроить.
person
TaW
schedule
19.12.2014