项目中需要打印出一张固定格式的word,其中表格内部分数据由数据库动态生成,我想问有没有这方面的免费控件可用或这类问题的解决方法,多谢!

解决方案 »

  1.   

    TX Text Control 17.0 SP1
      

  2.   

    使用Book可以解决,先做一个word文档的模板,然后用代码打开文档,用对应的东西替换掉原来的部分
                String[,] constr ={
                                   {"书签1","书签2"},
                                    {"内容1","内容2"}
                              };
                Object missing = System.Reflection.Missing.Value;
                app = new Microsoft.Office.Interop.Word.Application();
                app.Visible = false;
                object Obj_FileName = FileName;
                object Visible = false;
                object ReadOnly = false;
                worddoc = app.Documents.Open(ref Obj_FileName, ref missing, ref ReadOnly, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref Visible, ref missing, ref missing, ref missing, ref missing);
                worddoc.Activate();
                foreach (Book bm in worddoc.Books)
                {
                    for (int i = 0; i < constr.GetLength(1); i++)
                        if (bm.Name == constr[0, i])
                        {
                            bm.Select();
                            bm.Range.Text = constr[1, i];
                            break;
                        }
                }
                object IsSave = true;
                worddoc.Close(ref IsSave, ref missing, ref missing);
                app.Quit(ref missing, ref missing, ref missing);