如何打印Form?
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=64998
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=64998
解决方案 »
- 急急,关于sqlite插入数据时,字符问题
- C# Datagridview奇怪的错误,捕捉不到错误怎么办
- C#中DirectSound播放音频,怎么控制播放进度。
- 急,关于C#水晶报表的问题
- 100分求教如何用select组织多个select的结果?
- 第一个解决者,百分送上!改注册表,在一定时间内只能运行指定程序,知道用组策略管理器,可以实现,不过我想用编程的方法。
- 有人用过NUNIT做过C#的单元测试吗
- sql08安装提示Framework3.5的问题
- 这段VB.net代码用C#怎么写?
- 疑问
- 请问各位开发人员,有没有熟悉软件测试工作的。这个行业情况如何。
- 请教高手:xml字符串写回dataset对象的问题!
Http://www.codeproject.com上找一下,很多的。
肯定有你要的。
第1步:定义两个XML对象,一个存储数据(XML数据源),一个作为模板(其实这是一个xslt文件),首先将界面上的数据转换成XML数据(XML数据源),然后通过xslt转换,注意转换之后的对象还是一个xml,而不是平时一般的转换成html(如果你转换成html也可以,这样你可以通过IE的打印功能将html打印,但这样并不是我想要的结果,主要问题是分页不能控制),这样处理之后的结果是数据和格式混合,例如<text id="Text1" x="450" y="40" fontname="Arial" fontsize="24" fontcolor="Black" b="true" i="false" u="true">文字数据 </text>
第2步:定义一个类(Element),一个虚函数Draw(),派生出很多你想的对象,例如上面的text,你可以这样写
public class text:Element
{
public override bool Draw(Graphics g)
{
//具体实现
}
}
你也可以为你的Lable,TextBox,DataGrid实现各自的Draw方法(注意实现直接DataGrid的draw()很麻烦啊,并且很不通用,你要想办法)。
第3步:用一个解释器,将上面的的XML对象的每个元素打印出来。