Buscar..


Observaciones

El contenido de los controles se puede localizar utilizando archivos de recursos, al igual que esto es posible en las clases. Para XAML hay una sintaxis específica, que es diferente entre una aplicación C # y una VB.

Los pasos son:

  • Para cualquier proyecto de WPF: haga público el archivo de recursos, el valor predeterminado es interno.
  • Para proyectos C # WPF use el XAML provisto en el ejemplo
  • Para proyectos de VB WPF, use el XAML que se proporciona en el ejemplo y cambie la propiedad de la Herramienta personalizada a PublicVbMyResourcesResXFileCodeGenerator .
  • Para seleccionar el archivo Resources.resx en un proyecto VB WPF:
    • Seleccione el proyecto en explorador de soluciones.
    • Seleccione "Mostrar todos los archivos"
    • Expandir mi proyecto

XAML para 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>

Propiedades para el archivo de recursos en VB

De forma predeterminada, la propiedad Herramienta personalizada para un archivo de recursos de VB es VbMyResourcesResXFileCodeGenerator . Sin embargo, con este generador de código, la vista (XAML) no podrá acceder a los recursos. Para resolver este problema, agregue Public antes del valor de la propiedad Herramienta personalizada.

Para seleccionar el archivo Resources.resx en un proyecto VB WPF:

  • Seleccione el proyecto en explorador de soluciones.
  • Seleccione "Mostrar todos los archivos"
  • Expandir "Mi proyecto"

introduzca la descripción de la imagen aquí

XAML para 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>

Hacer públicos los recursos.

Abra el archivo de recursos haciendo doble clic en él. Cambie el modificador de acceso a "Público". introduzca la descripción de la imagen aquí



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow