Làm thế nào để: Xử lý sự kiện cho các Office 2003 cấu phần Web trong Visual Studio.NET

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:823982
Bài viết này đã được lưu trữ. Bài viết được cung cấp "nguyên trạng" và sẽ không còn được cập nhật nữa.
TÓM TẮT
Bài viết từng bước này mô tả làm thế nào để sửa đổi các hàm bao cấp cho Microsoft Office 2003 cấu phần Web. Nó sau đó mô tả làm thế nào để tạo lại lớp hàm bao, do đó bạn có thể quản lý các sự kiện của họ trong một ứng dụng mà bạn tạo ra bằng cách sử dụng Microsoft Visual Studio.NET.

Theo mặc định, hàm bao lớp rằng Microsoft Visual Studio.NET tạo ra cho phép bạn để xử lý sự kiện cho các thành phần Office 2003 Web sau đây:
  • Bảng xếp hạng
  • Bảng tính
  • PivotTable
Để xử lý sự kiện cho các thành phần này, bạn có thể sửa đổi mã nguồn cho hàm bao lớp, và sau đó biên dịch mã.

Nền

Microsoft Visual Studio.NET tạo ra một sự kiện nghe lớp mà thực hiện một sự kiện giao diện. Điều này sự kiện nghe lớp học được thông qua thành phần Web Office (OWC). OWC sau đó cuộc gọi các QueryInterface phương pháp cho các IDispatch giao diện, thay vì của gọi các sự kiện giao diện. Tuy nhiên, các IDispatch giao diện cho các lớp học được tạo ra không chứa định danh công văn (DISPIDs) cho các sự kiện.

Để giải quyết vấn đề này, bạn có thể đánh dấu các lớp học được tạo ra bằng cách sử dụng cácClassInterfaceType.None giá trị để buộc COM interop trở lại IDispatch cho giao diện thay vì cho lớp. Các IDispatch giao diện chứa các sự kiện DISPIDs.

Bước để sửa đổi và xây dựng lại các hàm bao Class

  1. Bắt đầu Visual Studio.NET dấu nhắc lệnh.
  2. Tại dấu nhắc lệnh, làm như sau:
    1. Tạo một thư mục mới đặt tên owc11, và sau đó thay đổi thư mục đó:
      MD c:\owc11

      CD c:\owc11
    2. Tạo ra mã nguồn trong C# cho wrapper Microsoft Windows Forms:
      aximp "c:\program files\common files\microsoft shared\web components\11\owc11.dll" /source
    3. Xóa hội đồng được tạo ra AxOWC11.dll:
      del c:\owc11\axowc11.dll
  3. Trong một trình soạn thảo văn bản (ví dụ như Notepad), mở C:\OWC11\AxOWC11.CS.
  4. Thêm[ToolboxItem(true)] để tạo ra lớp cho các Bảng xếp hạng thành phần, các Bảng tính thành phần, và các PivotTable thành phần, như trong ví dụ sau đây:

    Biểu đồ thành phần
     [System.ComponentModel.ToolboxItem(true)]  public class AxChartSpace : System.Windows.Forms.AxHost {   	...  } 
    Thành phần bảng tính
     [System.ComponentModel.ToolboxItem(true)]  public class AxSpreadsheet : System.Windows.Forms.AxHost { 	 ...  } 
    Thành phần PivotTable
     [System.ComponentModel.ToolboxItem(true)]  public class AxPivotTable : System.Windows.Forms.AxHost { 	 ...  } 
  5. Đánh dấu các lớp sự kiện nhưClassInterfaceType.None, như trong ví dụ sau đây:

    Biểu đồ thành phần
     [System.Runtime.InteropServices.ClassInterface(   System.Runtime.InteropServices.ClassInterfaceType.None)]  public class AxChartSpaceEventMulticaster : OWC11.IChartEvents { 	 ...  } 
    Thành phần bảng tính
     [System.Runtime.InteropServices.ClassInterface(   System.Runtime.InteropServices.ClassInterfaceType.None)] public class AxSpreadsheetEventMulticaster : OWC11.ISpreadsheetEventSink { 	 ... } 
    Thành phần PivotTable
     [System.Runtime.InteropServices.ClassInterface(   System.Runtime.InteropServices.ClassInterfaceType.None)]  public class AxPivotTableEventMulticaster : OWC11.IPivotControlEvents { 	 ...  } 
  6. Lưu các thay đổi của bạn để AxOWC11.cs.
  7. Tại phòng thu trực quan.NET dấu nhắc lệnh, hãy làm như sau:
    1. Thêm C: Program Files Files\Microsoft.NET\Primary hội đồng Interop đến của bạnLIB biến môi trường:
      đặt lib = c:\program files\microsoft.net\primary interop hội đồng khác nhau; đường dẫn %%
    2. Sao Microsoft.Office.interop.OWC11.dllMSComCtl.dll từ GẤC mà Microsoft Office 2003 chính Interop hội đồng được cài đặt:
      bản sao %windir%\assembly\GAC\Microsoft.Office.Interop.Owc11\11.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Owc11.dll

      bản sao %windir%\assembly\GAC\mscomctl\10.0.4504.0__31bf3856ad364e35\mscomctl.dll
    3. Biên dịch tập tin nguồn, AxOWC11.cs:
      CSC /t:library /r:microsoft.office.interop.owc11.dll /r:adodb.dll /r:msdatasrc.dll /r:mscomctl.dll axowc11.cs
      Chú ý Bạn nhận được thông báo lỗi sau CS0108:
      Các từ khóa mới là bắt buộc
      Bạn có thể bỏ qua lỗi này.
  8. Bắt đầu Visual Studio.NET.
  9. Thêm biên của bạn vừa được-dịch AxOWC11.dll để các Hộp công cụ:
    1. Trên cácCông cụ trình đơn, nhấp vàoTuỳ chỉnh hộp công cụ (trong Visual Studio.NET 2002), hoặc bấm Thêm/loại bỏ khoản mục hộp công cụ (trong Visual Studio.NET 2003), sau đó bấm các .Các thành phần NET Framework tab.
    2. Trên các.Các thành phần NET Framework tab, bấm vàoTrình duyệt.
    3. Trong các Tên tệp hộp văn bản, loạic:\owc11\axowc11.dll. Nhấp vàoMở.
    4. Nhấp vàoOk để đóng nhữngTuỳ chỉnh hộp công cụ hộp thoại.
Khi bạn tạo một mới Microsoft Visual Basic.NET dự án hoặc một mới Microsoft Visual C#.NET dự án, nhận thấy rằng danh sách các điều khiển trên các Tổng quát thẻ tab trong các Hộp công cụ chứa các AxChartSpace điều khiển, các AxPivotTable kiểm soát, và các AxSpreadsheet kiểm soát. Bây giờ bạn có thể thêm các thành phần này với các hình thức của bạn.

THAM KHẢO
Để biết thêm chi tiết về việc quản lý các sự kiện cho Office XP cấu phần Web bằng cách sử dụng Visual Studio.NET, nhấp vào số bài viết sau để xem các bài viết trong cơ sở kiến thức Microsoft:
328275Làm thế nào để: Xử lý sự kiện cho các cấu phần Web văn phòng trong Visual Studio.NET
webchart pivot bảng lây lan tờ trội owc

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 823982 - Xem lại Lần cuối: 12/08/2015 03:35:52 - Bản sửa đổi: 2.0

Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition, Microsoft Visual C# .NET 2003 Standard Edition, Microsoft Visual C# .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbpia kbofficewebspread kbofficewebpivot kbofficewebchart kbhowto kbmt KB823982 KbMtvi
Phản hồi