Ş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 alanı: Bu konudaki bilgiler şu uygulamaların belge düzeyi projelerine ve uygulama düzeyi projelerine yöneliktir: Excel 2007 ve Excel 2010; InfoPath 2007 ve InfoPath 2010; Outlook 2007 ve Outlook 2010; PowerPoint 2007 ve PowerPoint 2010; Project 2010; Visio 2010; Word 2007 ve Word 2010. Daha fazla bilgi için bkz. Office Uygulamalarında Kullanılabilir Özellikler ve Proje Türü.
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 için Şerit'i Özelleştirme.
Şerit'ten bir uygulamanın nasıl otomatikleştirildiğini gösteren bir anlatım için, bkz. İzlenecek Yol: Özel sekmesini Kurdele xml kullanarak 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, OnToggleButton1 onAction 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 çağrı yöntemlerini sahip bir Microsoft.Office.Core.IRibbonControl parametresi temsil eden denetimi, olarak adlandırılan yöntem. 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.
Öğe |
Açyklama |
---|---|
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 |
Açıklama |
---|---|---|
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, Microsoft.Office.Core.IRibbonExtensibility arayüzünü uygular.
Aşağıdaki tabloda, bu sınıftaki varsayılan yöntemler açıklanır.
Method |
Açıklama |
---|---|
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(String) yöntemi.
Not
GetCustomUI, sadece Şerit XML dosyasının içindekilerini döndürmek için uygulanmalıdır; eklentinizi başlatmak için kullanılmamalıdır.Özellikle, GetCustomUI uygulamasında iletişim kutularını veya diğer pencereleri görüntülemeye çalışmamalısınız.Aksi durumda, özel Şerit doğru çalışmayabilir.Eklentinizi başlatan bir kodu çalıştırmak zorundaysanız, kodu ThisAddIn_Startup olay işleyicisine ekleyin.
|
OnLoad |
Microsoft.Office.Core.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: Özel sekmesini Kurdele xml kullanarak oluşturma