2013-12-20 2 views
2

У меня есть UserControl, который использует локализованные строки из ресурсов. Он отлично работает для всех элементов кроме ContextMenu элементов:Локализовать заголовок элемента ContextMenu в WPF

xmlns:Properties="clr-namespace:MyNamespace.Properties" 

Это работает отлично:

<Button Content="{x:Static Properties:Resources.BtnOpen}" ... 

Но это не делает:

<TextBlock.ContextMenu> 
    <ContextMenu> 
     <MenuItem Header="{x:Static Properties:Resources.CmdClose}" 

Я получаю: The член " CmdClose "не распознается или недоступен.

ответ

2

Я думаю, что это дает эту ошибку, потому что модификатор доступа (уровень защиты) может быть «внутренний» сделать это «общественного» в Resources.Designer.cs файл

Ее работы в мой случай:

<TextBlock.ContextMenu> 
    <ContextMenu> 
     <MenuItem Header="{x:Static resx:Resources.Total_Qty}" /> 
    </ContextMenu> 
</TextBlock.ContextMenu> 

Я создал свойство Total_Qty в своем файле ресурсов.

+0

он уже публичный, и я могу получить к нему доступ без проблем в других элементах управления – filip

+1

10 странно, начал работать. Должна быть опечатка – filip