Я создал новое решение VS, которое должно содержать измененное подмножество файлов из другого решения. Оба решения имеют пространство имен по умолчанию «Microsoft.Windows.Controls». Сборка из старого решения называется «WPFToolkit», а новая сборка называется «DatePicker». Одним из файлов, которые я скопировал в новое решение, является встроенный ресурс с именем «ExceptionStringTable.txt». Содержание выглядит следующим образом, хотя я не уверен, что это формат:
; DataGrid Selection Commands
DataGrid_SelectAllCommandText=Select All
DataGrid_SelectAllKey=Ctrl+A
DataGrid_SelectAllKeyDisplayString=Ctrl+A
Я установил для файла «Build Action» значение «Embedded Resource», как в исходном решении. Во время выполнения он загружается так:
private static ResourceManager _resourceManager =
new ResourceManager("ExceptionStringTable", typeof(SR).Assembly);
После выполнения кода
_resourceManager.GetString(id.String)
Я получаю это исключение времени выполнения:
Произошла исключительная ситуация System.Resources.MissingManifestResourceException
Сообщение = "Не удалось найти ресурсы, подходящие для указанной культуры или нейтральной культуры. Убедитесь, что \" ExceptionStringTable.resources \ "был правильно встроен или связан с сборкой \" DatePicker \ "во время компиляции, или что требуются все сателлитные сборки загружаются и полностью подписаны. "
Программно перечисляя имена ресурсов сборки, я получаю это:
DatePicker.g.resources
Microsoft.Windows.Controls.Resources.ExceptionStringTable.txt
Microsoft.Windows.Controls.Properties.Resources.resources
Что мне нужно сделать, чтобы файл ExceptionStringTable.txt был преобразован в его эквивалент .resources, а затем встроен в мою сборку таким образом, чтобы uri "ExceptionStringTable" обнаружил его?