最近写一个WPF项目,中间有一个实现在画布中排列的问题(整齐摆列几行几列的算法)。本人逻辑有点差啊,废了老大功夫
才实现,也没啥就牛逼的,就是拿出来分享一下,给需要的同学节省点时间,如果有用的话别忘赞一下啊!^^,谢谢! 代码如下:
double BetwDistance = 0;//两个之间的间距
double LDistance = 100;//整体离左的距离
double TDistance = 100;//整体离右的距离
valueRowCount =;//设为多少,就会显示几行
if (i % valueRowCount == )
{
tempTarget.X = (i / valueRowCount) * (_elementTidyWidth + addWH) + LDistance;
tempTarget.Y = (i % valueRowCount) * ((_elementTidyHeight + BetwDistance)) + TDistance;
}
else
{
tempTarget.X = (int)(i / valueRowCount) * (_elementTidyWidth + addWH) + LDistance;
tempTarget.Y = (i % valueRowCount) * ((_elementTidyHeight + BetwDistance)) + TDistance;
} Canvas.SetLeft(voiBlock, tempTarget.X);
Canvas.SetTop(voiBlock, tempTarget.Y); 效果如下