Обычно вам не нужно добавлять Legend
, поскольку уже есть значение по умолчанию.Но поскольку вы создаете код Chart
, вам действительно нужно немного больше кода.Добавление Legend
- это один из этих вещей.
Вы создали legend
, но вместо добавления вы создаете еще одну легенду.Вместо этого напишите: chartA.Legends.Add(legend)
Обратите внимание, что документация (включая Intellisense) неверна для конструктора со строковым параметром!Он работает, как и ожидалось, а не так, как описано в MSDN!
То, что я предложил (chartA.Legends[0].Title = "someString";
), работает нормально, если вы сделали все остальное, что вам нужно:
Вам также придется создать(по крайней мере)
- Один
ChartArea
- Один
Series
вместе с ChartType
, который вы хотите .. - .. для того, чтобы сделатьэто показывает, что вы также должны добавить
DataPoint
.
Пример:
Legend legend = new Legend();
Chart chartA = new Chart(); // <<---!
chartA.BackColor = Color.White;
chartA.Width = 370;
chartA.Height = 250;
chartA.Location = new Point(48, 35);
chartA.Name = textBox1.Text;
chartA.Legends.Add(legend); // <<---!
legend.Title = "Age of The Employees"; // <<---!
chartA.ChartAreas.Add(new ChartArea("ca")); // <<---!
chartA.ChartAreas["ca"].BackColor = Color.LightSeaGreen;
Series s1 = chartA.Series.Add("s1"); // <<---!
s1.ChartType = SeriesChartType.Pie;
s1.Points.AddY(12);
s1.Points.AddY(32);
..
Первый Legend
будет автоматически заполняться либо одним LegendItem
на Series
или (если у вас есть Pie
диаграмма) один элемент за DataPoint
Кстати: у вас может быть дополнительно Legends
, но вам придется позаботиться об их содержании иих положение / стыковка ..
Обновление: если вы хотите, вы можете взять под контроль и легенды Font
и TitleFont
;Это работает обычным образом, то есть путем создания нового Font
, либо с нуля, либо из FontFamily
из Font
:
legend.Font = new Font("Consolas", 10f);
legend.TitleFont = new Font(legend.Font.FontFamily, 14f);
Возможно, вы захотите вставить символ новой строки (\n
) в заголовок, если он слишком длинный, чтобы поместиться в вертикальную легенду.