Şerit XML
Şerit (XML) öğesi, XML kullanarak Şerit'i özelleştirmenize olanak sağlar.Şerit (Visual Designer) öğesi tarafından desteklenmeyen bir yolla Şerit'i özelleştirmek istiyorsanız, Şerit (XML) öğesini kullanın.Her bir öğeyle ne yapabileceğinizi karşılaştırmak için, bkz. Şerite Genel Bakış.
Uygulama hedefi: Bu konudaki bilgiler, şu uygulamalar için belge düzeyi projeler ve uygulama düzeyi projelere yöneliktir: Excel 2013 ve Excel 2010; InfoPath 2013 ve InfoPath 2010; Outlook 2013 ve Outlook 2010; PowerPoint 2013 ve PowerPoint 2010; Project 2013 ve Project 2010; Visio 2013 ve Visio 2010; Word 2013 ve Word 2010. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.
Projeye Şerit (XML) Öğesi Ekleme
Şerit (XML) öğesini herhangi bir Office projesine Yeni Öğe Ekle iletişim kutusundan ekleyebilirsiniz.Visual Studio, aşağıdaki dosyaları otomatik olarak projenize ekler:
Şerit XML dosyası.Bu dosya, Şerit kullanıcı arayüzünü (UI) tanımlar.Bu dosyayı, sekmeler, gruplar ve denetimler gibi UI öğelerini eklemek için kullanın.Detaylar için, bu konunun devamında Şerit XML Dosya Başvurusu'a bakınız.
Şerit kod dosyası.Bu dosya, Şerit sınıfı'nı içerir.Bu sınıf, Yeni Öğe Ekle iletişim kutusunda Şerit (XML) için belirlediğiniz isme sahiptir.Microsoft Office uygulamaları, özel Şerit'i yüklemek için bu sınıfın bir örneğini kullanır.Detaylar için, bu konunun devamında Şerit Sınıfı Başvurusu'a bakınız.
Varsayılarn olarak bu belgeler, Şerit'teki Eklentiler sekmesine özel bir grup ekler.
Microsoft Office Uygulamasında Özel Şerit'i Görüntüleme
Projenize Şerit (XML) ekledikten sonra, CreateRibbonExtensibilityObject yöntemini geçersiz kılan ve Office uygulamasına Şerit XML sınıfını döndüren ThisAddin, ThisWorkbook veya ThisDocument sınıfına kod eklemelisiniz.
Aşağıdaki kod örneği, CreateRibbonExtensibilityObject yöntemi geçersiz kılar ve MyRibbon isimli Şerit XML sınıfı döner.
Protected Overrides Function CreateRibbonExtensibilityObject() As _
Microsoft.Office.Core.IRibbonExtensibility
Return New MyRibbon()
End Function
protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject()
{
return new MyRibbon();
}
Özel Şerit'in Davranışını Tanımlama
geri arama yöntemleri oluşturarak, kullanıcı eylemlerine yanıt verebilirsiniz, örn. Şerit üzerinde bir düğmeyi tıklatmak.Geri arama yöntemleri, Windows Forms denetimlerindeki olaylara benzerdir, fakat UI öğesinin XML'indeki bir öznitelik tarafından tanımlanırlar.Şerit sınıfındaki yöntemleri ve öznitelik değeriyle aynı isme sahip olan yöntemi çağıran bir denetimi yazabilirsiniz.Örneğin, kullanıcı Şerit üzerinde bir düğmeyi tıklattığında çağırılan geri arama yöntemi oluşturabilirsiniz.Geri arama yöntemi oluşturmak için iki adım gereklidir:
Kodunuzda geri arama yöntemini tanımlayan Şerit XML dosyasında, denetime bir öznitelik atayın.
Şerit sınıfında geri arama yöntemini tanımlayın.
[!NOT]
Outlook'ta, ek bir adım gereklidir.Daha fazla bilgi için bkz. Outlook İçin Şerit Özelleştirme.
Şerit'ten bir uygulamanın nasıl otomatikleştirildiğini gösteren bir anlatım için, bkz. İzlenecek Yol: Şerit XML Kullanarak Özel Sekme Oluşturma.
Denetimlere Geri Arama Yöntemleri Atama
Şerit XML dosyasındaki bir denetime geri arama yöntemi atamak için, geri arama yönteminin türünü ve yöntemin ismini belirleyen bir öznitelik ekleyin.Örneğin, aşağıdaki öğede, OnToggleButton1onAction geri arama yöntemine sahip iki durumlu düğme tanımlanır.
<toggleButton id="toggleButton1" onAction="OnToggleButton1" />
Kullanıcı, belirli bir denetimle ilişkili olan ana görevi gerçekleştirdiğinde, onAction çağırılır.Örneğin, iki durumlu düğmenin onAction geri arama yöntemi, kullanıcı düğmeyi tıklattığında çağrılır.
Öznitelikte belirttiğiniz yöntem, herhangi bir isme sahip olabilir.Fakat, Şerit kod dosyasında tanımladığınız yöntemin adıyla eşleşmelidir.
Şerit denetimlerine atayabileceğiniz birçok değişik türde geri arama yöntemleri vardır.Her denetimde kullanılabilen geri arama yöntemlerinin tam listesi için, Customizing the Office (2007) Ribbon User Interface for Developers (Part 3 of 3) teknik makaleye bakın.
Geri Arama Yöntemlerini Tanımlama
Şerit kod dosyasındaki Şerit sınıfında geri arama yöntemlerini tanımlayın.Geri arama yönteminin birçok gereksinimi vardır:
Ortak olarak bildirilmelidir.
İsmi, Şerit XML dosyasında denetime atadığınız geri arama yönteminin ismiyle eşleşmelidir.
İmzası, ilgili Şerit sınıfı için kullanılabilir olan geri arama yönteminin türünün imzasıyla eşleşmelidir.
Şerit denetimleri için geri arama yöntemi imzalarının tam listesi için, Customizing the Office (2007) Ribbon User Interface for Developers (Part 3 of 3) teknik makaleye bakın.Visual Studio, Şerit kod dosyasında oluşturduğunuz geri arama yöntemleri için IntelliSense desteği sağlamaz.Geçerli bir imzayla eşleşmeyen geri arama yöntemi oluşturursanız, kod derlenir ama kullanıcı denetimi tıklattığında hiçbir şey olmaz.
Tüm geri arama yöntemleri olan bir IRibbonControl yöntemi çağıran denetimi temsil eden parametresi.Bu parametreyi, çoklu denetimleri için aynı geri arama yöntemini yeniden kullanmak amacıyla kullanabilirsiniz.Aşağıdaki kod örneğinde, kullanıcının tıklattığı denetime bağlı olarak farklı görevler gerçekleştiren onAction geri arama yöntemi gösterilir.
Public Sub OnActionCallback(ByVal control As Office.IRibbonControl, _
ByVal isPressed As Boolean)
If (control.Id = "checkBox1") Then
MessageBox.Show("You clicked " + control.Id)
Else
MessageBox.Show("You clicked a different control.")
End If
End Sub
public void OnActionCallback(Office.IRibbonControl control, bool isPressed)
{
if (control.Id == "checkBox1")
{
MessageBox.Show("You clicked " + control.Id);
}
else
{
MessageBox.Show("You clicked a different control.");
}
}
Şerit XML Dosya Başvurusu
Kendi özel Şerit'inizi, Şerit XML dosyasına öğeler ve öznitelikler ekleyerek tanımlayabilirsiniz.Varsayılan olarak, Şerit XML dosyası aşağıdaki XML'i içerir.
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="https://schemas.microsoft.com/office/2006/01/customui" onLoad="OnLoad">
<ribbon>
<tabs>
<tab idMso="TabAddIns">
<group id="MyGroup"
label="My Group">
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Aşağıdaki tablo Şerit XML dosyasındaki varsayılan öğeleri açıklar.
Öge |
Tanımlama |
---|---|
customUI |
Eklenti projesindeki özel Şerit'i temsil eder. |
ribbon |
Şerit'i temsil eder. |
tabs |
Bir dizi Şerit sekmesini temsil eder. |
tab |
Tek bir Şerit sekmesini temsil eder. |
group |
Şerit sekmesindeki denetim grubunu temsil eder. |
Bu öğeler, özel Şerit'in görünümünü ve davranışını belirleyen özniteliklere sahiptir.Aşağıdaki tablo Şerit XML dosyasındaki varsayılan öznitelikleri açıklar.
Öznitelik |
Üst öğe |
Tanımlama |
---|---|---|
onLoad |
customUI |
Uygulama Şerit'i yüklediğinde çağrılan bir yöntemi tanımlar. |
idMso |
tab |
Şerit'i görüntülemek için yerleşik sekmeyi tanımlar. |
id |
group |
Grubu tanımlar. |
label |
group |
Grup üzerinde görünen metni belirler. |
Şerit XML dosyasındaki varsayılan öğeler ve öznitelikler, kullanılabilir olan öğelerin ve özniteliklerin küçün bir alt kümesidir.Kullanılabilir öğelerin ve özniteliklerin tam listesi için, Customizing the Office (2007) Ribbon User Interface for Developers (Part 2 of 3) teknik makaleye bakın.
Şerit Sınıfı Başvurusu
Visual Studio, Şerit kod dosyasında Şerit sınıfını yaratır.Şerit üzerindeki denetimler için geri arama yöntemlerini bu sınıfa ekleyin.Bu sınıf, IRibbonExtensibility arayüzünü uygular.
Aşağıdaki tabloda, bu sınıftaki varsayılan yöntemler açıklanır.
Method |
Tanımlama |
---|---|
GetCustomUI |
Şerit XML dosyasının içindekilerini döner.Microsoft Office uygulamaları, özel Şerit'inizin kullanıcı arayüzünü tanımlayan XML dizgisini elde etmek için bu yöntemi çağırır.Bu yöntemi uygulayan IRibbonExtensibility.GetCustomUI yöntem.
|
OnLoad |
IRibbonControl parametresini, ribbon alanına atar.Microsoft Office uygulamaları, özel Şerit'i yüklediklerinde bu yöntemi çağırır.Özel Şerit'i dinamik olarak güncellemek için bu alanı kullanabilirsiniz.Daha fazla bilgi için, Customizing the Office (2007) Ribbon User Interface for Developers (Part 1 of 3) teknik makaleye bakın. |
GetResourceText |
Şerit XML dosyasının içindekileri elde etmek için GetCustomUI yöntemi tarafından çağrılır. |
Ayrıca bkz.
Görevler
İzlenecek Yol: Şerit XML Kullanarak Özel Sekme Oluşturma