萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 辦公室軟體 >  >> Word 教學 >> Word 使用技巧

Word 2007 VSTO 開發:建立自訂工作窗格——我的部落格側邊欄雛形

VSTO 開發系列第三篇:使用 Windows Forms UserControl 建立「我的部落格」側邊欄 UI,包含部落格下拉清單、檢視部落格按鈕、最新文章清單、檢視文章按鈕、草稿清單、開啟草稿按鈕,並以 CustomTaskPane 方式載入 Word 2007。

1. 設計 UserControl:MyBlogsUserControl

專案右鍵 → 「加入」→「使用者控制項」→ 命名 `MyBlogsUserControl.cs`。拖放控制項:

控制項類型Name用途
部落格清單ComboBoxcbxBlogs顯示/選擇部落格
檢視部落格ButtonbtnViewBlogIE 開啟部落格首頁
最新文章ListBoxlbxRecentPosts顯示 RSS 最新文章
檢視文章ButtonbtnViewPostIE 開啟文章網頁
草稿清單ListBoxlbxDrafts顯示本地草稿檔案
開啟草稿ButtonbtnOpenDraftWord 開啟草稿文件

MyBlogsUserControl 設計器畫面

2. ThisAddIn_Startup 載入 CustomTaskPane

private CustomTaskPane myBlogsPane;
private void ThisAddIn_Startup(object sender, EventArgs e) {
    MyBlogsUserControl ctrl = new MyBlogsUserControl();
    myBlogsPane = this.CustomTaskPanes.Add(ctrl, "My Blogs");
    myBlogsPane.Visible = true; // 此行後續會移除,改由 ToggleButton 控制
}

Startup 程式碼

關鍵點

  • `CustomTaskPanes.Add(UserControl, Title)` 回傳 `CustomTaskPane` 物件。
  • `Title` 屬性("My Blogs")用於後續從集合中尋找該窗格。
  • `Visible` 控制顯示/隱藏。

3. 命名空間引用

using Microsoft.Office.Tools.CustomTaskPane;
using Microsoft.Office.Tools.Word;

引用命名空間

執行效果

側邊欄載入效果

  • Word 啟動後右側自動展開「我的部落格」工作窗格。
  • UI 佈局完整,但尚無資料與邏輯(空殼狀態)。

架構優勢

  • UserControl 封裝 UI 與邏輯,可獨立測試、重複使用。
  • CustomTaskPane 提供停駐、浮動、自動隱藏等原生視窗行為。
  • VSTO 簡化了 COM 層級的 `ICTPFactory` 介面操作。

下一步

下一章實作資料填充邏輯:讀取 `Blogs.xml`、RSS 解析、草稿掃描,構建 `Blog`/`Post`/`Draft` 實體模型與 `BlogsManager` 管理類別。

copyright © 萬盛學電腦網 all rights reserved