jok*_*efe 4 c# asp.net charts legend
使用ASP.Net中内置的Chart控件,我试图手动定位Title和Legend,使它们在ChartArea上方水平直接相邻.我已经能够使用以下代码手动定位标题:
chart.Titles["Title1"].Position.Auto = false;
chart.Titles["Title1"].Position.X = 10;
chart.Titles["Title1"].Position.Y = 5;
Run Code Online (Sandbox Code Playgroud)
真的没有什么可以做的.但是,我试图使用以下代码将Legend置于其右侧,并且Legend甚至没有出现:
chart.Legends["Legend1"].Position.Auto = false;
chart.Legends["Legend1"].Position.X = 30;
chart.Legends["Legend1"].Position.Y = 5;
Run Code Online (Sandbox Code Playgroud)
我有什么想法我做错了吗?这似乎应该相对简单.我甚至尝试了各种其他坐标,我无法让Legend出现在任何地方.如果我使用如下所示的内置定位,它会出现,但这种定位不适合我的目的:
chart.Legends["Legend1"].Docking = Docking.Top;
chart.Legends["Legend1"].DockedToChartArea = "ChartArea1";
chart.Legends["Legend1"].IsDockedInsideChartArea = false;
chart.Legends["Legend1"].Alignment = StringAlignment.Far;
Run Code Online (Sandbox Code Playgroud)
Kar*_*son 11
尝试新建一个ElementPosition对象,如下所示:
chart.Legends["Legend1"].Position.Auto = false;
chart.Legends["Legend1"].Position = new ElementPosition(30, 5, 100, 20);
Run Code Online (Sandbox Code Playgroud)
注意:构造函数ElementPosition采用0或4个参数(x,y,width,height).
小智 6
我偶然发现了这个问题,以寻找如何在图表底部移动图例。
答案是使用Docking财产
Chart1.Legends["Legend1"].Docking = Docking.Bottom;
Run Code Online (Sandbox Code Playgroud)
将来可能对某人有帮助,因为这是谷歌搜索中的第一个链接。