ข้อความนำ
บทความนี้อธิบายตัวอย่างกรอบงานรหัสออลอินผิดที่พร้อมใช้งานสำหรับการดาวน์โหลด โค้ดตัวอย่างนี้สาธิตวิธีการพัฒนาแบบ COM 2010 OneNote ของ Microsoft เพิ่มในแอพลิเคชันที่ประมวลผลอินเทอร์เฟซสำหรับIRibbonExtensibility เพิ่มในโปรแกรมประยุกต์ที่สนับสนุนการกำหนด ribbon เอง ด้วยการใช้อินเทอร์เฟซสำหรับIRibbonExtensibility โค้ดตัวอย่างนี้ยังแนะนำเกี่ยวกับวิธีการใช้แบบจำลองอ็อบเจกต์ OneNote 2010
ระดับความยาก
ข้อมูลการดาวน์โหลด
เมื่อต้องการดาวน์โหลดโค้ดตัวอย่างนี้ คลิกการเชื่อมโยงต่อไปนี้:
ภาพรวมทางเทคนิค
สร้างการใช้ร่วมกันเพิ่มในแอพลิเคชันสำหรับ OneNote 2010
เนื่องจากการใช้ร่วมกันเพิ่มในตัวช่วยสร้างไม่ประกอบด้วยตัวเลือก Microsoft OneNote การสร้างที่ใช้ร่วมกันเพิ่มในโปรแกรมประยุกต์ OneNote 2010 ให้ทำตามขั้นตอนเหล่านี้:
-
เลือก Microsoft Access เป็นโฮสต์แอพลิเคชันของคุณในการใช้ร่วมกันเพิ่มในตัวช่วยสร้าง
-
ปรับเปลี่ยนการตั้งค่าโครงการรีจิสทรีHKCUเพื่อคีย์ย่อยของรีจิสทรีต่อไปนี้:
[HKEY_CURRENT_USER\Software\Microsoft\Office\OneNote\AddIns\CSOneNoteRibbonAddIn.Connect]"LoadBehavior"=dword:00000003"FriendlyName"="OneNoteRibbionAddIn""Description"="OneNote2010 Ribbon AddIn ตัวอย่าง"
สืบทอด IDTExtensibility อินเทอร์เฟซสำหรับการกำหนดเองตัวควบคุม ribbon สำหรับ OneNote
เมื่อต้องการกำหนดเอง ตัวควบคุม ribbon สำหรับ OneNote เรียกใช้รหัสดังต่อไปนี้เพื่อทำให้การเชื่อมต่อคลาสที่สืบทอดอินเทอร์เฟซสำหรับIRibbonExtensibilityและจากนั้น ใช้วิธีGetCustomUI :
/// <summary> /// Loads the XML markup from an XML customization file /// that customizes the Ribbon user interface. /// </summary> /// <param name="RibbonID">The ID for the RibbonX UI</param> /// <returns>string</returns> public string GetCustomUI(string RibbonID) { return Properties.Resources.customUI; }
กำหนดเองไอคอนและปฏิบัติลักษณะการทำงานของปุ่มสำหรับตัวควบคุม ribbon
เรียกใช้รหัสดังต่อไปนี้เพื่อใช้วิธีOnGetImageและShowFormในแฟ้ม customUI.xml:
/// <summary> /// Implements the OnGetImage method in customUI.xml /// </summary> /// <param name="imageName">the image name in customUI.xml</param> /// <returns>memory stream contains image</returns> public IStream OnGetImage(string imageName) { MemoryStream stream = new MemoryStream(); if (imageName == "showform.png") { Resources.ShowForm.Save(stream, ImageFormat.Png); } return new ReadOnlyIStreamWrapper(stream); } /// <summary> /// show Windows Form method /// </summary> /// <param name="control">Represents the object passed into every /// Ribbon user interface (UI) control's callback procedure.</param> public void ShowForm(IRibbonControl control) { OneNote.Window context = control.Context as OneNote.Window; CWin32WindowWrapper owner = new CWin32WindowWrapper((IntPtr)context.WindowHandle); TestForm form = new TestForm(applicationObject as OneNote.Application); form.ShowDialog(owner); form.Dispose(); form = null; context = null; owner = null; GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); }
ใช้แบบจำลองอ็อบเจกต์ OneNote 2010 เพื่อเรียกดูชื่อเรื่องสำหรับเพจที่มี OneNote
เพิ่มการอ้างอิงไลบรารีวัตถุ 14.0 OneNote ของ Microsoft และจากนั้น ตั้งค่าคุณสมบัติชนิด Interop ฝังเป็นFalse:
/// <summary> /// Get the title of the page /// </summary> /// <returns>string</returns> private string GetPageTitle() { string pageXmlOut = GetActivePageContent(); var doc = XDocument.Parse(pageXmlOut); string pageTitle = ""; pageTitle = doc.Descendants().FirstOrDefault().Attribute("ID").NextAttribute.Value; return pageTitle; }
ประเภทของเทคโนโลยี
พัฒนาสำนักงาน
ภาษา
ตัวอย่างรหัสนี้มีอยู่ในภาษาการเขียนโปรแกรมต่อไปนี้:
ภาษา |
ชื่อโครงการ |
---|---|
Visual C# |
COneNoteRibbonAddIn |
Visual Basic.NET |
VBOneNoteRibbonAddIn |
ข้อกำหนดเบื้องต้น
เมื่อต้องการเรียกใช้โค้ดตัวอย่างนี้ คุณต้องติดตั้งผลิตภัณฑ์ต่อไปนี้:
-
Microsoft Visual Studio 2010
-
เครื่องมือ Studio Microsoft Visual สำหรับ Microsoft Office 2010
-
Microsoft OneNote 2010
แท็ก
-
OneNote 2010 Ribbon AddIn
-
COM AddIn
-
IDTExtensibility
-
รูปแบบวัตถุของ OneNote 2010
อ้างอิง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ COM add-in ของโปรแกรมประยุกต์ที่จะปรับเปลี่ยนส่วนติดต่อผู้ใช้ แวะไปเว็บไซต์ MSDN ต่อไปนี้:
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาความเข้ากันได้ สำหรับ OneNote 2010 และ Visual Studio2010 แวะไปที่บล็อก MSDN ต่อไปนี้:
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้าง OneNote 2010 COM add-in ของโปรแกรมประยุกต์ แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
ข้อมูลเพิ่มเติม
กรอบงานรหัสออลอินคืออะไร
กรอบงานรหัสออลอินแสดงเทคนิคการพัฒนา Microsoft ส่วนใหญ่ โดยใช้ตัวอย่างรหัสในภาษาการเขียนโปรแกรมต่าง ๆ ตัวอย่างแต่ละอย่างรอบคอบเลือก ส่วนประกอบ และจัดทำเอกสารเพื่อแสดงสถานการณ์สมมติรหัสทั่วไปหนึ่ง สำหรับข้อมูลเพิ่มเติมเกี่ยวกับกรอบงานรหัสออลอิน แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
วิธีการค้นหาตัวอย่างรหัส Framework ออลอินเพิ่มเติม
เมื่อต้องการค้นหาตัวอย่างรหัส Framework ออลอินเพิ่มเติม ค้นหา "kbcodefx" ร่วมกับคำสำคัญที่เกี่ยวข้องใน Microsoft สนับสนุนเว็บไซต์ หรือ แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
คำปฏิเสธการเผยแพร่อย่างรวดเร็ว
Microsoft corporation และ/หรือของซัพพลายเออร์แต่ละรายทำไม่ได้ยืนยันใด ๆ เกี่ยวกับความเหมาะสม ความน่าเชื่อถือ หรือความถูกต้องของข้อมูลและกราฟิกที่เกี่ยวข้องที่มีอยู่ในที่นี้ ข้อมูลและกราฟิกที่เกี่ยวข้องทั้งหมดดังกล่าวไว้ให้ "ตามที่เป็นอยู่" โดยไม่มีการรับประกันใด ๆ Microsoft และ/หรือซัพพลายเออร์ที่เกี่ยวข้องแปลง disclaim รับประกันและเงื่อนไขที่เกี่ยวข้องกับข้อมูลนี้ทั้งหมด และที่เกี่ยวข้องกับกราฟิก รวมถึงการรับประกันโดยนัยทั้งหมดและเงื่อนไขของความสามารถในเชิงพาณิชย์ ความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ workmanlike ความพยายาม ชื่อเรื่อง และที่ไม่ใช่การละเมิด โดยเฉพาะอย่างยิ่งตกลงว่า ไม่ จะ Microsoft และ/หรือซัพพลายเออร์ที่รับผิดชอบใด ๆ เกิดจากทางตรง ทางอ้อม โทษ พิเศษ ต่อการเสียหาย หรือเสียหายใด ๆ ก็ตามรวมถึง แต่ไม่ เสียหายสำหรับการใช้ ข้อมูล หรือ กำไร เกิดจากทั้งหมด หรือ ในวิธีใด ๆ ที่เชื่อมโยงกับการใช้งานหรือไม่สามารถใช้ข้อมูลและกราฟิกที่เกี่ยวข้องอยู่ในที่นี้ ว่าตามสัญญา สูญ ความผิด หนี้สินที่เข้มงวด หรืออย่างอื่น ใด แม้ว่า Microsoft หรือของซัพพลายเออร์ใด ๆ มีการ คำแนะนำเกี่ยวกับเสียหายที่อาจเกิดขึ้น