Menü komutlarını yerelleştir
VSPackage'ınız için yerelleştirilmiş .vsct dosyaları ve yerelleştirilmiş .resx dosyaları oluşturup ardından proje dosyalarını değişiklikleri içerecek şekilde güncelleştirerek menü ve araç çubuğu komutları için yerelleştirilmiş metin sağlayabilirsiniz.
Yükleme deneyimini yerelleştirme hakkında bilgi için bkz . VSIX paketlerini yerelleştirme.
Komut adlarını yerelleştirme
VSPackage'larda menü komutları ve araç çubuğu düğmeleri .vsct dosyasında tanımlanır.
Çözüm Gezgini dosyaadı.vsct dosyasından .vsct dosyasının adını filename.en-US.vsct olarak değiştirin.
Her yerelleştirilmiş dil için filename.en-US.vsct dosyasının bir kopyasını oluşturun.
Her kopya dosya adını adlandırın.{ Locale}.vsct; burada {Locale} belirli bir kültür adıdır. Kültür adı değerlerinin listesi için bkz . Microsoft tarafından atanan Yerel Ayar Kimlikleri.
Bu dosya adı. Locale.vsct dosyaları paketinizin yerelleştirilmiş menü metnini içerir.
Her dosya adını açın. Metni yerelleştirmek için Locale.vsct dosyası.
ButtonText öğesi değerlerini belirli bir dile uygun şekilde değiştirin.
Yerelleştirilmiş simgeler sağlayacaksanız, Bit Eşlem değerlerini hedef dosyalara işaret edecek şekilde değiştirin.
Aşağıdaki örnekte, aile ağacı gezgini araç penceresini açmak için bir komutun İngilizce ve İspanyolca düğme metni gösterilmektedir.
[FamilyTree.en-US.vsct]
<Button guid="guidLocalizedPackageCmdSet" id="cmdidFamilyTree" priority="0x0100" type="Button"> <Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1"/> <Icon guid="guidImages" id="bmpPic2" /> <Strings> <CommandName>cmdidFamilyTree</CommandName> <ButtonText>Family Tree Explorer</ButtonText> </Strings> </Button>
[FamilyTree.es-ES.vsct]
<Button guid="guidLocalizedPackageCmdSet" id="cmdidFamilyTree" priority="0x0100" type="Button"> <Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1"/> <Icon guid="guidImages" id="bmpPic2" /> <Strings> <CommandName>cmdidFamilyTree</CommandName> <ButtonText>Explorar el arbol genealogico</ButtonText> </Strings> </Button>
Diğer metin kaynaklarını yerelleştirme
Komut adları dışındaki metin kaynakları kaynak (.resx) dosyalarında tanımlanır.
VSPackage.resx'i VSPackage.en-US.resx olarak yeniden adlandırın.
Her yerelleştirilmiş dil için VSPackage.en-US.resx dosyasının bir kopyasını yapın.
Her kopyaya VSPackage adını verin.{ Locale}.resx, burada {Locale} belirli bir kültür adıdır.
Resources.resx dosyasını Resources.en-US.resx olarak yeniden adlandırın.
Her yerelleştirilmiş dil için Resources.en-US.resx dosyasının bir kopyasını yapın.
Her kopyaya Kaynaklar adını verin.{ Locale}.resx, burada {Locale} belirli bir kültür adıdır.
Dize değerlerini belirli bir dil ve kültüre uygun şekilde değiştirmek için her bir .resx dosyasını açın. Aşağıdaki örnekte, bir araç penceresinin başlık çubuğu için yerelleştirilmiş kaynak tanımı gösterilmektedir.
[Resources.en-US.resx]
<data name="ToolWindowTitle" xml:space="preserve"> <value>Family Tree Explorer</value> </data>
[Resources.es-ES.resx]
<data name="ToolWindowTitle" xml:space="preserve"> <value>Explorador del arbol genealogico</value> </data>
Yerelleştirilmiş kaynakları projeye ekleme
Yerelleştirilmiş kaynakları birleştirmek için assemblyinfo.cs dosyasını ve proje dosyasını değiştirmeniz gerekir.
Çözüm Gezgini'deki Özellikler düğümünden düzenleyicide assemblyinfo.cs veya assemblyinfo.vb dosyasını açın.
Aşağıdaki girdiyi ekleyin.
[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
Bu, ABD İngilizcesini varsayılan dil olarak ayarlar.
Projeyi kaldırın.
Proje dosyasını düzenleyicide açın.
Kök
Project
öğesinde, varsayılan dilinizle eşleşen bir öğeye sahip birUICulture
öğe ekleyinPropertyGroup
.<PropertyGroup> <UICulture>en-US</UICulture> </PropertyGroup>
Bu, ABD İngilizcesini Windows Presentation Foundation (WPF) denetimleri için varsayılan kullanıcı arabirimi kültürü olarak ayarlar.
Öğeleri içeren
EmbeddedResource
öğeyiItemGroup
bulun.VSPackage.en-US.resx çağıran öğesinde
ManifestResourceName
öğesini olarak ayarlanmışVSPackage.en-US.Resources
birLogicalName
öğeyle değiştirin:EmbeddedResource
<EmbeddedResource Include="VSPackage.en-US.resx"> <MergeWithCTO>true</MergeWithCTO> <LogicalName>VSPackage.en-US.Resources</LogicalName> </EmbeddedResource>
Her yerelleştirilmiş dil için
VsPackage.en-US
öğesini kopyalayın ve kopyanınEmbeddedResource
Include özniteliğini ve LogicalName öğesini hedef yerel ayara ayarlayın.Her yerelleştirilmiş
VSCTCompile
öğeyeMenus.ctmenu
, aşağıdaki örnekte gösterildiği gibi öğesine işaret eden birResourceName
öğe ekleyin:<ItemGroup> <VSCTCompile Include="LocalizedPackage.es-ES.vsct"> <ResourceName>Menus.ctmenu</ResourceName> </VSCTCompile> </ItemGroup>
Proje dosyasını kaydedin ve projeyi yeniden yükleyin.
Projeyi derleyin.
Bu, her dil için bir ana derleme ve kaynak derlemeleri oluşturur. Dağıtım işlemini yerelleştirme hakkında bilgi için bkz. VSIX paketlerini yerelleştirme