Я хочу получить доступ к свойству «Ресурсы» моего проекта WPF из файла XAML внутри того же проекта.
- Я добавил ресурс «Text123» и установил модификатор доступа «Public»,
- Я объявил пространство имен в своем файле XAML как
xmlns:p="clr-namespace:MyProject.Properties"
- Я добавил ссылку на свойство из содержимого кнопки как
Content="{x:Static p:Resources.Text123}"
В результате я получаю сообщение об ошибке из Visual Studio, в котором говорится: Имя «Ресурсы» не существует в пространстве имен «clr-namespace: MyProject.Properties».
Что я могу сделать, чтобы избавиться от этой ошибки?
Файл Resources.resx
существует в проекте и выглядит нормально. Даже в файле Resources.Designer.vb
я могу видеть объявленный ресурс как Public ReadyOnly Property
.
P.S: сгенерированный Resources.Designed.vb:
Option Strict On
Option Explicit On
Imports System
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'''<summary>
''' A strongly-typed resource class, for looking up localized strings, etc.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Public Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Returns the cached ResourceManager instance used by this class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Public ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("MyProject.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Overrides the current thread's CurrentUICulture property for all
''' resource lookups using this strongly typed resource class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Public Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set
resourceCulture = value
End Set
End Property
'''<summary>
''' Looks up a localized string similar to Cancel.
'''</summary>
Public ReadOnly Property Text123() As String
Get
Return ResourceManager.GetString("Text123", resourceCulture)
End Get
End Property
End Module
End Namespace