在C#中创建’标签设计师’

我正在尝试创建一个相当简单的标签打印机,以补充我们网站上提供的服务(使用IPN处理PayPal付款并输出包含可自定义交易信息的CSV文件)。

我的打印机模块大部分已经分类,但我希望该软件的用户能够调整信息的位置,类似于Brother提供的P-Touch软件。

该过程包括加载CSV文件,其中包含各种列标题。 然后,您应该能够移动关于布局的列标题 – 在窗体窗口中间的空格,然后理想情况下,它会捕捉到对齐网格。

之后,用户可以选择打印预览,并根据可用的不同标签尺寸打印标签,其中数据源是CSV文件。

我的主要问题是“标签设计师”,我不知道从哪里开始。 我正在使用Visual Express 2010测试版和C#。

基本上,您需要允许用户在“表单”周围拖动标签(对象,控件等)。

在运行时在winform中拖动图片框

然后你需要能够在拖动时捕捉到网格(coppercoder的解决方案):

对齐网格鼠标锁定

定义一个抽象的“对象”,它封装了您希望用户“拖动表单”(或面板,或用于模拟纸张的任何控件)的“标签”。

我想我已经做到这一点足以发现它相当微不足道,虽然如果这是你第一次实现这样的事情,这可能是一项艰巨的任务。 获得一小部分function,您将完成它。 当然,你总是有问题的stackoverflow。

我建议你开始看WPF,而不是因为WPF中的图形function更强大。 您可能需要使用Canvas对象,因为需要显式定义子元素,这是“标签设计器”所需要的。