Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MS Charts:获取真实的内部位置?_C#_.net_Mschart - Fatal编程技术网

C# MS Charts:获取真实的内部位置?

C# MS Charts:获取真实的内部位置?,c#,.net,mschart,C#,.net,Mschart,使用Microsoft charts创建图表时,我需要获得网格在图表上的确切位置 我的理解是,这可以通过InnerPlotPosition实现。但是,使用此属性时,我会得到以下矩形: 这个矩形似乎与图表大小成比例;调整图表大小时,矩形会缩小,但所有边上的矩形仍保持在网格的外侧。我尝试过用一个常数来加和乘大小,但没有一个常数适用于所有大小 所以,为了澄清,我想要的是网格上的外部黑色矩形。有什么办法得到这个吗 (我一直在考虑从边缘扫描像素,并检测每个方向上的第一个黑色像素,但这听起来像是一个拙劣的破

使用Microsoft charts创建图表时,我需要获得网格在图表上的确切位置

我的理解是,这可以通过InnerPlotPosition实现。但是,使用此属性时,我会得到以下矩形:

这个矩形似乎与图表大小成比例;调整图表大小时,矩形会缩小,但所有边上的矩形仍保持在网格的外侧。我尝试过用一个常数来加和乘大小,但没有一个常数适用于所有大小

所以,为了澄清,我想要的是网格上的外部黑色矩形。有什么办法得到这个吗


(我一直在考虑从边缘扫描像素,并检测每个方向上的第一个黑色像素,但这听起来像是一个拙劣的破解。)

我终于找到了一个可行的解决方案:

     ChartArea a = chart.ChartAreas[0];
     double x1 = a.AxisX.ValueToPixelPosition(a.AxisX.Minimum);
     double x2 = a.AxisX.ValueToPixelPosition(a.AxisX.Maximum);
     double y1 = a.AxisY.ValueToPixelPosition(a.AxisY.Maximum);
     double y2 = a.AxisY.ValueToPixelPosition(a.AxisY.Minimum);