wpf
Localizzazione WPF
Ricerca…
Osservazioni
Il contenuto dei controlli può essere localizzato utilizzando i file di risorse, proprio come questo è possibile nelle classi. Per XAML esiste una sintassi specifica, che è diversa tra un C # e un'applicazione VB.
I passaggi sono:
- Per qualsiasi progetto WPF: rendere pubblico il file delle risorse, il valore predefinito è interno.
- Per i progetti C # WPF, utilizzare l'XAML fornito nell'esempio
- Per i progetti VB WPF, utilizzare l'XAML fornito nell'esempio e modificare la proprietà Strumento personalizzato in
PublicVbMyResourcesResXFileCodeGenerator
. - Per selezionare il file Resources.resx in un progetto VB WPF:
- Seleziona il progetto in Solution Explorer
- Seleziona "Mostra tutti i file"
- Espandi il mio progetto
XAML per 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>
Proprietà per il file di risorse in VB
Per impostazione predefinita, la proprietà Strumento personalizzato per un file di risorse VB è VbMyResourcesResXFileCodeGenerator
. Tuttavia, con questo generatore di codice la vista (XAML) non sarà in grado di accedere alle risorse. Per risolvere questo problema, aggiungi Public
prima del valore della proprietà dello Strumento personalizzato.
Per selezionare il file Resources.resx in un progetto VB WPF:
- Seleziona il progetto in Solution Explorer
- Seleziona "Mostra tutti i file"
- Espandi "Il mio progetto"
XAML per 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>
Rendi pubbliche le risorse
Aprire il file di risorse facendo doppio clic su di esso. Cambia il modificatore di accesso in "Pubblico".