昨天我问了如何在C#窗体中打开word文档,可能是我描述不清楚,今天再问一下。
问题是这样的:
  我想在一个窗体中的一个区域内显示word文档的内容,点击“浏览”,然后选择一个Word文件,然后就可以在区域内显示出来,但是显示出来的内容不能修改。请问要怎么做啊?

解决方案 »

  1.   

    添加AxWebBrowser(AxInterop.SHDocVw.dll)COM+控件到你的浏览窗体;
    Button_Click 事件:
    OpenFileDialog() ofd = new OpenFileDialog();
    ofd..Multiselect = false;
    ofd.DefaultExt = "doc"
    ofd.RestoreDirectory = true;
    ofd.Filter = "Word 文档(*.doc)|*.doc|所有文件(*.*)|*.*);
    ofd.Title = "打开Word文档...";
    if(ofd.ShowDialog(this) == DialogResult.OK)
    {
      this.AxWebBrowser1.Navigate(ofd.FileName);//会自动嵌入Word编辑器
    }不允许修改数据,你试试this.AxWebBrowser1.Enabled = false; 也许有其它限止只读的函数。
      

  2.   

    完全同意3tzjq(永不言弃)的方法
      

  3.   

    AxWebBrowser1.Enabled = false;
      

  4.   

    3tzjq(永不言弃)说未获得参数1,怎么改啊
      

  5.   

    还有axWebBrowser1没有enable这个属性啊
      

  6.   

    this.AxWebBrowser1.Navigate(ofd.FileName);
    这条语句有问题
    还有AxWebBrowser1没有enable属性
      

  7.   

    AxWebBrowser1.Enabled = false;
    这个不行吧,这样是不是连滚动什么都不行了
      

  8.   

    未获得参数1,改成如下就行了。object anObject = new object ();
    try
    {
    this.AxWebBrowser1.Navigate(ofd.FileName, ref anObject, ref anObject, ref anObject, ref anObject);//会自动嵌入Word编辑器

    catch{}
      

  9.   

    Object o = null;
    this.AxWebBrowser1.Navigate(ofd.FileName, ref o, ref o, ref o, ref o);
      

  10.   

    看看AxWebBrowser1的EditMode属性行不行
      

  11.   

    谢谢楼上的朋友,现在doc文档可以显示出来了
    但是显示前要弹出个对话框,选择“打开”,“保存”,“取消”,可不可以不要这个对话框啊,让它直接打开啊。还有就是怎么让用户不能修改显示的内容呢?
      

  12.   


    看看AxWebBrowser1的EditMode属性行不行
    //////////////////////////////////////////////////////////////////////////
    用了,报错了F:\dev\WindowsApplication5\Form1.cs(114): 无法对属性或索引器“System.Windows.Forms.AxHost.EditMode”赋值 -- 它是只读的
      

  13.   

    可以直接使用如下语句,但好像滚动条没用了
    this.AxWebBrowser1.Enabled = false;
      

  14.   

    再次感谢大家
    我再问一下,还有其他显示word的方法吗?不用AxWebBrowser,用其他什么控件可以吗?
      

  15.   

    我也用AxWebBrowser,帮你顶一下。
      

  16.   

    为什么用webbrowse,直接把word放进来不久可以吗?
      

  17.   

    请问 shanmin(shanmin) 怎么直接放进来啊
      

  18.   

    听说下代office用xml文件格式,这样就方便了
      

  19.   

    我用了office的richtext 控件终于搞定了
    感谢所有楼上的朋友