Bagikan melalui


Memperbarui kustomisasi Pita yang dimigrasikan ke .NET Framework 4.5

Jika proyek Anda berisi kustomisasi Pita yang dibuat dengan menggunakan item proyek Pita (Visual Designer), Anda harus membuat perubahan berikut pada kode proyek Anda jika kerangka kerja target diubah ke .NET Framework 4 atau yang lebih baru.

  • Ubah kode Pita yang dihasilkan.

  • Ubah kode apa pun yang membuat instans kontrol Pita pada waktu proses, menangani peristiwa Pita, atau mengatur posisi komponen Pita secara terprogram.

Memperbarui kode Pita yang dihasilkan

Jika kerangka kerja target proyek Anda diubah ke .NET Framework 4 atau yang lebih baru, Anda harus mengubah kode yang dihasilkan untuk item Pita dengan melakukan langkah-langkah berikut. File kode yang perlu Anda perbarui bergantung pada bahasa pemrograman dan cara Anda membuat proyek:

  • Di proyek Visual Basic, atau di proyek Visual C# yang Anda buat di Visual Studio 2012 atau Visual Studio 2010 melakukan semua langkah dalam file Kode pita di belakang (YourRibbonItem. Designer.cs atau YourRibbonItem. Designer.vb). Untuk melihat file code-behind di proyek Visual Basic, klik tombol Perlihatkan Semua File di Penjelajah Solusi.

  • Di proyek Visual C# yang Anda buat di Visual Studio 2008 lalu dimutakhirkan ke Visual Studio 2013, lakukan dua langkah pertama dalam file Kode pita (YourRibbonItem.cs atau YourRibbonItem.vb), dan lakukan langkah-langkah yang tersisa dalam file Kode pita di belakang.

Untuk mengubah kode Pita yang dihasilkan

  1. Ubah deklarasi kelas Pita sehingga berasal dari RibbonBase bukan Microsoft.Office.Tools.Ribbon.OfficeRibbon.

  2. Ubah konstruktor kelas Pita seperti yang diperlihatkan di bawah ini. Jika Anda telah menambahkan kode Anda sendiri ke konstruktor, jangan ubah kode Anda. Dalam proyek Visual Basic, ubah hanya konstruktor tanpa parameter. Abaikan konstruktor lain.

    Contoh kode berikut menunjukkan konstruktor default kelas Pita dalam proyek yang menargetkan .NET Framework 3.5.

    public Ribbon1()
    {
        InitializeComponent();
    }
    

    Contoh kode berikut menunjukkan konstruktor default kelas Pita dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru.

    public Ribbon1()
        : base(Globals.Factory.GetRibbonFactory())
    {
        InitializeComponent();
    }
    
  3. Dalam metode , InitializeComponent ubah kode apa pun yang membangun kontrol Pita sehingga kode sebagai gantinya menggunakan salah satu metode pembantu RibbonFactory objek.

    Catatan

    Dalam proyek Visual C#, Anda harus memperluas wilayah yang diberi nama Component Designer generated code untuk melihat InitializeComponent metode .

    Misalnya, asumsikan bahwa file Anda berisi baris kode berikut yang membuat instans bernama RibbonButtonbutton1 dalam proyek yang menargetkan .NET Framework 3.5.

    this.button1 = new Microsoft.Office.Tools.Ribbon.RibbonButton();
    

    Dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru, Anda harus menggunakan kode berikut sebagai gantinya.

    this.button1 = this.Factory.CreateRibbonButton();
    

    Untuk daftar lengkap metode pembantu untuk kontrol Pita, lihat Membuat instans kontrol Pita.

  4. Dalam proyek Visual C#, ubah baris kode apa pun dalam InitializeComponent metode yang menggunakan EventHandler<TEventArgs> delegasi untuk menggunakan delegasi Pita tertentu sebagai gantinya.

    Misalnya, asumsikan Click bahwa file Anda berisi baris kode berikut yang menangani peristiwa dalam proyek yang menargetkan .NET Framework 3.5.

    <CodeContentPlaceHolder>8 Dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru, Anda harus menggunakan kode berikut sebagai gantinya.

    <CodeContentPlaceHolder>9 Untuk daftar lengkap delegasi Pita, lihat Menangani peristiwa Pita.

  5. Di proyek Visual Basic, temukan ThisRibbonCollection kelas di akhir file. Ubah deklarasi kelas ini sehingga tidak lagi mewarisi dari Microsoft.Office.Tools.Ribbon.RibbonReadOnlyCollection.

Membuat instans kontrol Pita

Anda harus mengubah kode apa pun yang secara dinamis membuat instans kontrol Pita. Dalam proyek yang menargetkan .NET Framework 3.5, Kontrol pita adalah kelas yang dapat Anda buat langsung dalam skenario tertentu. Dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru, kontrol ini adalah antarmuka yang tidak dapat Anda buat secara langsung. Anda harus membuat kontrol dengan menggunakan metode yang disediakan oleh RibbonFactory objek.

Ada dua cara untuk mengakses RibbonFactory objek:

  • Dengan menggunakan properti Factory dari kelas Pita. Gunakan pendekatan ini dari kode di kelas Pita Anda.

  • Dengan menggunakan metode .Globals.Factory.GetRibbonFactory Gunakan pendekatan ini dari kode di luar kelas Pita Anda. Untuk informasi selengkapnya tentang kelas Global, lihat Akses global ke objek di proyek Office.

    Contoh kode berikut menunjukkan cara membuat RibbonButton di kelas Pita dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru.

<CodeContentPlaceHolder>10<CodeContentPlaceHolder>11 Tabel berikut mencantumkan kontrol yang dapat Anda buat secara terprogram dan metode yang digunakan untuk membuat kontrol dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru.

Menguasai Metode RibbonFactory untuk digunakan dalam proyek .NET Framework 4 dan yang lebih baru
RibbonButton CreateRibbonButton
RibbonButtonGroup CreateRibbonButtonGroup
RibbonCheckBox CreateRibbonCheckBox
RibbonComboBox CreateRibbonComboBox
RibbonDialogLauncher CreateRibbonDialogLauncher
RibbonDropDown: CreateRibbonDropDown
RibbonDropDownItem CreateRibbonDropDownItem
RibbonEditBox CreateRibbonEditBox
RibbonGallery CreateRibbonGallery
RibbonGroup CreateRibbonGroup
RibbonLabel CreateRibbonLabel
RibbonManager CreateRibbonManager
RibbonMenu CreateRibbonMenu
RibbonSeparator CreateRibbonSeparator
RibbonSplitButton CreateRibbonSplitButton
RibbonTab CreateRibbonTab
RibbonToggleButton CreateRibbonToggleButton

Menangani peristiwa Pita

Anda harus mengubah kode apa pun yang menangani peristiwa kontrol Pita. Dalam proyek yang menargetkan .NET Framework 3.5, peristiwa ini ditangani oleh delegasi generik EventHandler<TEventArgs> . Dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru, peristiwa ini sekarang ditangani oleh delegasi lain.

Tabel berikut mencantumkan peristiwa Pita dan delegasi yang terkait dengannya dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru.

Aktivitas Mendelegasikan untuk digunakan dalam proyek .NET Framework 4 dan yang lebih baru
LoadImage peristiwa di kelas Pita yang dihasilkan RibbonLoadImageEventHandler
Load RibbonUIEventHandler
Click

Click

ItemsLoading

TextChanged

ButtonClick

ItemsLoading

SelectionChanged

TextChanged

ButtonClick

Click

ItemsLoading

DialogLauncherClick

ItemsLoading

Click

Click
RibbonControlEventHandler

Mengatur posisi komponen Pita secara terprogram

Anda harus mengubah kode apa pun yang mengatur posisi grup Pita, tab, atau kontrol. Dalam proyek yang menargetkan .NET Framework 3.5, Anda dapat menggunakan AfterOfficeId metode dan BeforeOfficeId kelas statis Microsoft.Office.Tools.Ribbon.RibbonPosition untuk menetapkan Position properti grup, tab, atau kontrol. Dalam proyek yang menargetkan .NET Framework 4 atau yang lebih baru, Anda harus mengakses metode ini dengan menggunakan RibbonPosition properti yang disediakan oleh RibbonFactory objek .

Ada dua cara untuk mengakses RibbonFactory objek:

  • Dengan menggunakan Factory properti kelas Pita. Gunakan pendekatan ini dari kode di kelas Pita Anda.

  • Dengan menggunakan metode .Globals.Factory.GetRibbonFactory Gunakan pendekatan ini dari kode di luar kelas Pita Anda. Untuk informasi selengkapnya tentang kelas Global, lihat Akses global ke objek di proyek Office.

    Contoh kode berikut menunjukkan cara mengatur Position properti tab di kelas Pita dalam proyek yang menargetkan .NET Framework 3.5.

this.tab1.Position = RibbonPosition.AfterOfficeId("TabHome");

Contoh kode berikut menunjukkan tugas yang sama dalam proyek yang menargetkan .NET Framework 4.

this.tab1.Position = this.Factory.RibbonPosition.AfterOfficeId("TabHome");