Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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#-(绘图列-右上角)抽绳问题_C# - Fatal编程技术网

C#-(绘图列-右上角)抽绳问题

C#-(绘图列-右上角)抽绳问题,c#,C#,如图所示,这就是结果。我想让绳子在画线的右上角画 public void Form_Outline() { //左上角A //右上角B //左下角C //右下角D 书面记录(“开始”); WriteLog(string.Format(“Height{0}”,Tile_Grid.Height)); WriteLog(string.Format(“Width{0}”,Tile_Grid.Width)); Graphics gDraw=Tile_Grid.CreateGraphics(); 黑色钢笔

如图所示,这就是结果。我想让绳子在画线的右上角画

public void Form_Outline()
{
//左上角A
//右上角B
//左下角C
//右下角D
书面记录(“开始”);
WriteLog(string.Format(“Height{0}”,Tile_Grid.Height));
WriteLog(string.Format(“Width{0}”,Tile_Grid.Width));
Graphics gDraw=Tile_Grid.CreateGraphics();
黑色钢笔=新钢笔(颜色:黑色,5);
Pen Red_Pen=新笔(颜色:红色,1);
gDraw.DrawRectangle(黑色画笔,0,0,平铺网格宽度,平铺网格高度);
int Column\u Quanity=Int32.Parse(垂直线.Text);
var Column\u separation\u Size=Tile\u Grid.Width/Column\u quantity;
变量列计数=0;
对于(int i=0;i
您需要测量字符串并将其从x位置中减去,以将数字移动到上一列中

var number = (i+1).ToString();
var emSize = Column_Seperation_Size / 5;
var font = new Font("Arial", emSize)
var size = gDraw.MeasureString(number, font);
var brush = new SolidBrush(Color.Black);
g.DrawString(number, font, brush, Column_Count - size.Width, 0);

另外,当我尝试画更多的线时,就会出现这种情况。我不确定,但我也计划添加水平线。我甚至找不到您在哪里使用
gDraw.MeasureString
。。。因此,我无法帮助您您使用
列计数,0
作为
x,y
坐标指定字符串位置。您希望您期望的结果的坐标是什么?在你用它来绘制字符串之前,你还要增加
Column\u Count
。我不明白,图像有什么问题,你希望它做什么?
DrawString(…x,y)
方法使用坐标,你必须正确计算坐标。看屏幕截图,似乎你可以简单地添加足够负的偏移量来修复它。
var number = (i+1).ToString();
var emSize = Column_Seperation_Size / 5;
var font = new Font("Arial", emSize)
var size = gDraw.MeasureString(number, font);
var brush = new SolidBrush(Color.Black);
g.DrawString(number, font, brush, Column_Count - size.Width, 0);