Office Belgelerindeki Windows Forms Denetimleri Sınırlamaları
Microsoft Office Word belgelerine veya Microsoft Office Excel çalışma sayfalarına eklenen Windows Forms denetimleri ve Windows Forms'a eklenen Windows Forms denetimleri arasında farklılıklar vardır.Örneğin, Button denetimini belgeye eklediğinizde, Dock, Anchor ve TabIndex gibi özellikler, beklediğiniz gibi davranmayabilir.
Bu değişikliklerin çoğu, Windows Forms denetimlerinin belgelerde konumlandırılma yolundan kaynaklanır.Belgeye bir Windows Forms denetimi eklendiğinde, Office çalışma zamanı için Visual Studio Araçları belgedeki Windows Forms denetiminde bulundurulan ActiveX denetimini tümleştirir.Windows Forms denetimi, belgeye doğrudan tümleştirilmez.
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; Word 2013 ve Word 2010. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.
Windows Forms Denetimlerinin Yöntemleri ve Özelliklerindeki Sınırlamalar
Windows Forms'da çalıştıkları gibi belgede çalışmayan, Windows Forms denetimlerinin birçok yöntemi ve özelliği vardır, bu yüzden onların kullanılmaması önerilir.Örneğin, Dock ve Anchor gibi özellikleri ayarlamak, sadece denetimin belge yerine, kapsayıcı ActiveX denetimine göre konumunu etkiler.Aşağıdaki, Word ve Excel için Windows Forms denetimlerinin desteklenmeyen yöntemleri ve özelliklerinin bir listesidir.
Excel denetimlerinin desteklenmeyen yöntemleri ve özellikleri:
Anchor
Dock
Location
TabIndex
TabStop
TopLevelControl
Word denetimlerinin desteklenmeyen yöntemleri ve özellikleri:
Hide
Show
Anchor
Dock
Location
TabIndex
TabStop
TopLevelControl
Visible
Word belgesindeki metinde aynı satırda olan Windows Forms denetimlerinin Left veya Top özelliğini ayarlayamazsınız.Windows Forms denetimleri aşağıdaki durumlarda metin ile bir satırda eklenir:
Programlı olarak Word belgesine bir denetim ekleyin ve konumun aralığını belirleyen bir yöntemi kullanın.
Windows Forms denetimini bir belgeye tasarım zamanında ekleyin.Bunu, tasarımcıdaki denetimi değiştirerek değiştirebilirsiniz.
Office Belgerinde Windows Forms Denetimlerindeki Farklar
Windows Forms denetimleri, genellikle Windows Form'da yaptıkları gibi Office belgelerinde de aynı davranışlara sahiptir, fakat bazı farklılıklar mevcuttur.Aşağıdaki tabloda, Office belgelerindeki Windows Forms denetimleri için varolan farklar anlatılır.
İşlevsellik |
Farklar |
---|---|
Sekme düzenini denetleme |
Excel çalışma sayfası veya Word belgesinde bulunan denetimlerde klavye kısayolu kullanarak dolaşamazsınız. |
Gruplamayı denetleme |
GroupBox denetimini, Office belgesindeki diğer denetimleri içermesi için kullanamazsınız.Belgeye birden çok radyo düğmesini doğrudan eklediğinizde, radyo düğmeleri ayrı ayrı çalışmaz.Radyo düğmelerini ayrı ayrı çalışır yapmak için kod yazabilirsiniz; ama tercih edilen yaklaşım, radyo düğmelerini kullanıcı denetimine ekleyip sonra da belgeye eklemektir.Daha fazla bilgi için Office Geliştirme Örnekleri ve İzlenecek Yollar linlindeki Word Denetimleri Örneği veya Excel Denetimleri Örneği'ne bakınız. |
Kontrol tipi |
Belgedeki Windows Forms denetimleri, Excel çalışma sayfası veya Word belgesine özel ek işlevsellikleri denetimlere veren, Office çalışma zamanı için Visual Studio Araçları tarafından sağlanan bir sınıfla çevrilidir.Örneğin, Excel çalışma sayfasında Button denetimine sahipseniz, nesneye başvuru yaparken veya onu dönüştürürken, türü Button yerine Button olarak belirttiğinize emin olun. |
Konumu ve boyutu denetleme |
Denetimin boyut ve konumu, kapsayıcı ActiveX denetiminin parçası olan özellikler tarafından belirlenir.ActiveX denetimi özellikleri, Windows Forms denetimlerinin eşdeğer özelliklerinden farklı değerler alır.Denetimin Top, Left, Height veya Width özelliklerini ayarladığınızda, piksel yerine noktalar olarak ölçülürler. |
Word belgesindeki konumu denetleme |
Eğer denetimleri akış tabanlı düzene ekleniyorsa, denetimlerin içerik değiştiğinde, içerikle akacağını aklınızdan çıkarmayın.Denetimi, Araç Kutusu'ndan sürüklediğinizde paragrafa bağlayamazsınız çünkü denetim Word belgesine metinle birlikte bir satırda eklenir.Eğer denetimi eklemek için denetimi çift tıklamak gibi başka bir yöntem kullanırsanız, denetim resim eklemek için önceden ayarladığınız Word seçeneğine göre eklenir. Metinle birlikte satır içinde olan denetimin Left veya Top özelliğini ayarlayamazsınız. Denetimleri, üstbilgi veya altbilgi içinde veya alt belgede konumlandıramazsınız. |
Olayları denetleme |
Denetim seçildiğinde, aşağıdaki sırada olaylar oluşur:
Denetimin seçimi kaldırıldığında, aşağıdaki sırada olaylar oluşur:
|
Ölçeklendirmeyi denetleme |
Belgenin yakınlaştırma ayarını %100'den başka bir değere değiştirdiğinizde, denetimler belgeyle birlikte ölçekledirmek için görünse de devre dışıdır.Örneğin, eğer belge %130 yakınlaştırmadayken bir düğmeyi tıklattığınızda, yakınlaştırma %100 olarak ayarlanana kadar denetimin devre dışı kalacağını belirten bir ileti görünür.Denetimler, siz yakınlaştırmayı %100'e değiştirdiğinizde doğru çalışırlar. |
Özellik değerlerini denetleme |
Windows Form'daki denetimlerin özellikleri tamsayı değerine ayarlansa bile, Word belgesinde denetimler için single'a ayarlanırlar.Excel'de denetimlerin özellik değerleri double'a ayarlanır.Eğer çalışma sayfasındaki Height ve Width özelliği çalışma sayfasının veya ekranın boyutunu aşarsa, değer kısaltılır. |
Yeniden boyutlandırmayı denetleme |
Eğer belgedeki denetimi sekiz boyutlama işleyicilerinden biriyle yeniden boyutlandırırsanız, yeni denetim boyutları denetimin yeniden seçilene kadar Özellikler penceresinde yansıtımaz. |
Davranışı denetleme |
Excel çalışma sayfasındaki denetimler, çalışma sayfası penceresi ayrıldığında önceden tahmin edilemeyecek şekilde davranabilir.Örneğin, çalışma sayfasındaki TextBox'a erişim sadece pencerelerin birinde kullanılabilir olabilir. |
İsimlendirmeyi Denetleme |
Ayrılmış sözcükleri isim kontrollerini isimlendirmek için kullanamazsınız.Örneğin, çalışma sayfasına bir Button ekleyip ismini System olarak değiştirirseniz projenizi derlediğinizde hatalar oluşur. |
Denetimleri programlı olarak ekleme |
Denetimlerin yapıcısını çalışma zamanında belgeye denetim eklemek için kullanmayın.Onun yerine, Office çalışma zamanı için Visual Studio Araçları tarafından sağlanan yardımcı yöntemlerini kullanın.Örneğin, çalışma sayfasına bir düğme eklemek için AddButton yöntemini kullanın.Bu yardımcı yöntemler tarafından desteklenmeyen bir denetim eklemek istiyorsanız, AddControl yöntemini kullanabilirsiniz.Daha fazla bilgi için bkz. Office Belgelerine Çalışma Zamanında Denetim Ekleme. |
Denetimleri Kopyalama |
Eğer Windows Forms denetimini kopyalarsanız ve çalışma zamanında bir belgeye yapıştırırsanız, boş bir kapsayıcı ActiveX denetimi belgeye yapıştırılır.Windows Forms denetimi, yeni konumda görünmez ve özgün denetimin arkasındaki kod kapsayıcı ActiveX denetimine kopyalanmaz. |
Belge Düzeyi Projelerindeki Sınırlamalar
Belgelerdeki Windows Forms denetimlerini kullanmanın sınırlamaları belge düzeyi projelerine özeldir.
Tasarım Zamanında Desteği Denetleme
Bazı Windows Forms denetimleri, Excel çalışma sayfası veya Word belgesi Visual Studio tasarımcısında açık olduğunda Araç Kutusu'ndan kaldırılır.Bunun nedeni teknik sınırlamalar veya işlevselliğin Word veya Excel'de zaten olmasıdır.Excel ve Word projeleri, belge odağa sahip olduğunda tüm Windows Firms denetimlerini ve Araç Kutusu'ndaki diğer bileşenleri destekler ve üçüncü taraf denetimlerini çalışma sayfasına veya belgeye ekleyebilirsiniz.
[!NOT]
Tüm denetimler de Araç Kutusu'ndan, belge korunduğunda kaldırılır.Belge koruması hakkında bilgi için, bkz. Belge Düzeyi Çözümlerde Belge Koruması.
[!NOT]
Üçüncü taraf denetimlerinde, Office çözümünde kullanılabilmesi için ComVisibleAttribute özniteliğinin true olarak ayarlanmış olması lazım.
Aşağıdaki denetimler ve bileşenler Araç Kutusu'nda kullanılamaz.
Eski ActiveX Denetimleri için Destek
Eğer ActiveX denetimleri içeren, varolan Word belgesi veya Excel çalışma kitabını kullanan belge düzeyi Office projesi oluşturursanız, ActiveX denetimlerinin işlevselliği kaybolmaz; ama Visual Studio içinde belgenize yeni ActiveX denetimleri eklemeniz için destek kalmaz.Örneğin, eğer Word belgeniz Denetim araç kutusundan, Visual Basic for Applications (VBA) makrosu içeren bir düğmeye sahipse, belge Office projesinde kullanıldıktan sonra da makro çalışmaya devam eder.Fakat, ActiveX denetimlerini ve VBA denetimlerini kaldırmanız ve onları Windows Forms denetimleri ve yönetilen kodla değiştirmeniz tavsiye edilir.
Ayrıca bkz.
Görevler
Nasıl Yapılır: Office Belgelerine Windows Forms Denetimleri Ekleme
Kavramlar
Office Belgelerindeki Windows Forms Denetimlerine Genel Bakış
Office Belgelerine Çalışma Zamanında Denetim Ekleme