WPF:为内置命令标签指定语言

WPF:为内置命令标签指定语言,wpf,localization,menu,command,Wpf,Localization,Menu,Command,我正在使用内置的应用程序命令创建菜单: <Menu DockPanel.Dock="Top"> <MenuItem Header="_Datei"> <MenuItem Command="ApplicationCommands.New" /> <MenuItem Command="ApplicationCommands.Open" /> <MenuItem Command="Applic

我正在使用内置的
应用程序命令创建菜单:

<Menu DockPanel.Dock="Top">
    <MenuItem Header="_Datei">
        <MenuItem Command="ApplicationCommands.New" />
        <MenuItem Command="ApplicationCommands.Open" />
        <MenuItem Command="ApplicationCommands.Save" />
        <MenuItem Command="ApplicationCommands.SaveAs" />
        <Separator />
        <MenuItem Header="Been_den" Command="{StaticResource SchliessenCommand}" />
    </MenuItem>
</Menu>

根据系统语言的不同,
ApplicationCommands
显示的文本有所不同:在英语Windows 7上运行,
ApplicationCommands.New
显示为“New”,而在德语Windows 7上显示为“Neu”


由于应用程序的其余部分没有本地化,我希望应用程序命令始终以德语显示。有没有一种方法可以在不手动设置每个菜单项的
标题的情况下做到这一点?

您应该使用绑定并将命令作为绑定对象()来操作,以避免对不同命令的标题进行硬编码。

由于应用程序未本地化,您可以尝试始终将语言设置为德语;也就是说,
CultureInfo.CurrentUICulture
,它通常是从操作系统继承的(在任何窗口打开之前,在应用程序启动或类似的程序中进行设置)。

请详细说明:这将如何改变内置应用程序命令的行为?好主意。不幸的是,为UI线程更改
CurrentUICulture
,并没有带来什么不同。+1。我刚刚发现了这个线程,这似乎意味着您的方法是正确的,但在英语窗口上,德语的卫星程序集没有安装: