一:现在我已经用dsoframer.ocx将word文档内嵌在winform中,可以在线编辑内容,但是word里面有些空白的需要填值的地方,我是要从另一个界面输入的,请问怎么将那个值传入到这个word文档中,并且把这些值保存到数据库中。二:用dsoframer控件有一个不好的地方就是那个最上面的导航条,可不可以去掉啊,比如我们新建的winform窗体最上面会有一个Form1的导航条,winform窗体可以设置属性formborderstyle为none直接去掉最上面的导航条,请问dsoframer怎么去掉啊

解决方案 »

  1.   

    这个还是看看其他控件吧,RICHTEXT编辑器了.
      

  2.   

     Dsoframer控件可以用  ActiveDocument的属性获取当前操作文档的活动全局窗口.如果你懂VBA Office编程的话,就很容易了。
       再就是Dsoframer控件有相关的属性可以设置去掉导航条。  Toolbars,Titlebar,Menvbar。 你可以试试。
      

  3.   

      我只研究过对用Dsoframer控件操作 Excel 这段代码你可以参考一下。
       private void button2_Click(object sender, EventArgs e)
            {
                try
                {
                    this.axFramerControl1.Open("E:\\从2010-5-1到2010-5-31的排班表.xlsx");
                    var axFramerApp = this.axFramerControl1.GetApplication;                if (axFramerApp != null)
                    {
                        ////获取DSOFramer控件的Application
                        //Excel.Application excelApp = (Excel.Application)axFramerApp;   
                        //excelApp.Application.Interactive = true;                    //获取打开文档的句柄(文件类型)
                        Excel.Workbook workbook = (Excel.Workbook)this.axFramerControl1.ActiveDocument;
                        //当前工作表的个数
                        workbook.Sheets.Count.ToString();                    //*********循环出每一个工作表**********//
                        for (int i = 1; i <= workbook.Sheets.Count; i++)
                        {
                            Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[i];                        //设置允许编辑
                            Excel.AllowEditRanges ranges = worksheet.Protection.AllowEditRanges;
                            //单元格的坐标
                            ranges.Add("Information", worksheet.get_Range("A4", "AH13"), Type.Missing);                        //冻结的单元格(Range 单元格的对象)
                            Microsoft.Office.Interop.Excel.Range excelRange = worksheet.get_Range(worksheet.Cells[3, 4], worksheet.Cells[3, 4]);
                            //excelRange.Select();
                            //excelRange.HorizontalAlignment = XlHAlign.xlHAlignLeft;                        //把当前选定的区域的单元格设置为常规。
                            Microsoft.Office.Interop.Excel.Range ex = worksheet.get_Range("A1", "AH13");
                            ex.NumberFormatLocal = "@";  
                            ex.HorizontalAlignment = XlHAlign.xlHAlignCenter;                        //保护工作表
                            worksheet.Protect("myPassWord", Type.Missing, Type.Missing, Type.Missing,
                                              Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                                              Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                                              Type.Missing, true, Type.Missing, Type.Missing);
                        }
                        //保存工作薄
                        workbook.Saved = true;
                        workbook.Save();
                    }
                    else
                    {
                        MessageBox.Show("未获取文档的Application");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
      

  4.   

    你是怎么加载 word文档到Dsoframer 里面的