我有一个使用c#在visual studio 2008,.net compact中构建的条形码扫描器应用程序。
我们正在多个设备上测试软件,MC9090和MC9190
MC9090 - 96 DPI,250屏幕尺寸 MC9190 - 192 DPI,460屏幕尺寸(约)
该应用程序是为MC9090构建的,现在我在MC9190上进行测试,但没有为应用程序编写代码 - 开发人员已离开
因此,MC9190中动态构建的数据表太小
我已经修复了表单上的背景图像,通过将picturebox的sizemode属性更改为StretchImage来根据设备的DPI调整大小
有没有办法为动态构建的数据表执行此操作?
我有一个名为cs_barcode2Sample1的条形码示例程序在两个设备上成功运行但不幸的是我没有.sln这个并且不知道从哪里得到它
任何帮助将不胜感激。
雷切
答案 0 :(得分:0)
我通过找出设备的dpi并设置X和Y值来解决这个问题
using (Graphics g = this.CreateGraphics()) { float dpiX = g.DpiX; float dpiY = g.DpiY; }然后基于此我执行一个简单的计算,通过设置其宽度和高度来调整设备的大小 所以标准DPI是96,所以我将设备DPI除以96
private static int dpiwidth = (int)(dpiX / 96); private static int dpiheight = (int)(dpiY / 96);
然后我通过将当前高度和宽度乘以dpiheight和dpiwidth设置高度,现在我的移动设备为每个设备重新调整大小
datatable.width = dpiwidth * 133; - what ever your current width is datatable.rowheight = (int)(dpiheight * 32);