Поиск…


замечания

Содержимое элементов управления можно локализовать с помощью файлов ресурсов, как это возможно в классах. Для XAML существует определенный синтаксис, который отличается от C # и приложения VB.

Шаги:

  • Для любого проекта WPF: сделайте файл ресурсов общедоступным, значение по умолчанию является внутренним.
  • Для проектов C # WPF используется XAML, представленный в примере
  • Для проектов VB WPF используйте XAML, приведенный в примере, и измените свойство Custom Tool на PublicVbMyResourcesResXFileCodeGenerator .
  • Чтобы выбрать файл Resource.resx в проекте VB WPF:
    • Выберите проект в проводнике решений
    • Выберите «Показать все файлы»
    • Развернуть мой проект

XAML для VB

<Window x:Class="MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:WpfApplication1"
    xmlns:my="clr-namespace:WpfApplication1.My.Resources"
    mc:Ignorable="d"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <StackPanel>
        <Label Content="{Binding Source={x:Static my:Resources.MainWindow_Label_Country}}" />
    </StackPanel>
</Grid>

Свойства файла ресурсов в VB

По умолчанию свойство Custom Tool для файла ресурсов VB - VbMyResourcesResXFileCodeGenerator . Однако с этим генератором кода представление (XAML) не сможет получить доступ к ресурсам. Чтобы решить эту проблему, добавьте Public перед значением свойства Custom Tool.

Чтобы выбрать файл Resource.resx в проекте VB WPF:

  • Выберите проект в проводнике решений
  • Выберите «Показать все файлы»
  • Разверните «Мой проект»

введите описание изображения здесь

XAML для C #

<Window x:Class="WpfApplication2.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:WpfApplication2"
    xmlns:resx="clr-namespace:WpfApplication2.Properties"
    mc:Ignorable="d"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <StackPanel>
        <Label Content="{Binding Source={x:Static resx:Resources.MainWindow_Label_Country}}"/>
    </StackPanel>
</Grid>

Сделать ресурсы общедоступными

Откройте файл ресурсов, дважды щелкнув его. Измените модификатор доступа на «Public». введите описание изображения здесь



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow