Я разрабатываю приложение WPF в .NET. Я использую много проектов, потому что у него есть общие файлы другого проекта, такие как файлы ресурсов для локализации.
Если файл resx и файл xaml находятся в одном проекте ( Project1.Properties.Resources.resx ), все работает нормально ( Project1.AccountView.xaml )
Working Tree
|-Project1
| |-Properties
| | |-Resources.resx
| |
| |-AccountView.xaml
|
|
|-Project2
| ...
AccountView.xaml
<UserControl ...
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:p="clr-namespace:Project1.Properties">
....
<TextBox Controls:TextBoxHelper.Watermark="{x:Static p:Resources.Username}"/>
</UserControl>
Проблема здесь в том, что у меня есть файлы ресурсов в другом проекте ( Project2.Views.Account.Login.resx ), и я не могу использовать эти файлы в AccountView.xaml ( Помните, что этот xaml находится внутри 'Project1' ) так же, как
Working Tree
|-Project1
| |
| |-AccountView.xaml
|
|
|-Project2
|-Views
|-Account
|-Login.resx
AccountView.xaml
<UserControl ...
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:p="clr-namespace:Project2.Views.Account">
...
TextBox Controls:TextBoxHelper.Watermark="{x:Static Login.Username}"/>
</UserControl>
Ошибка при создании проекта: Имя входа в систему не существует в пространстве имен clr: Project2.Views.Account.
Все файлы resx имеют модификатор общего доступа.
Кто-нибудь знает, как я могу решить эту проблему?