Как вложить идентификаторы ресурсов?


Страницаимена ресурсов на MSDN говорит следующее.

Используйте разделитель точек (".") вложить идентификаторы с четкой иерархией.

Например, такие имена, как Menus.FileMenu.Close.Text и Menus.FileMenu.Close.Color, соответствуют этому руководству.

Как мне это сделать? Когда я пытаюсь,мне говорят, что точка недопустима в идентификаторе ресурса, как это.

Разочаровывающий.

Я могу понять, почему это недопустимо[1], вот почему я всегда предположил, что невозможно вложить идентификаторы ресурсов, и никогда не пытался до сих пор... но MSDN говорит, что я могу. Чего мне не хватает?

[1] от просмотра автоматически созданного файла Resource.Designer.cs.

1 5

1 ответ:

Я тоже это видел,и похоже, что это было вокруг в течение нескольких лет.

Генератор строгих типов генерирует строгий типизированный класс и сопоставляет каждый ресурс свойству этого класса. В качестве имени свойства будет использоваться имя ресурса (идентификатор). Идентификатор с точкой недопустим в C# (как вы заявили в вопросе). Однако генератор заменит точку подчеркиванием, так что вы все равно получите допустимый строгий типизированный класс.

Обычно я просто замените точку символом подчеркивания. Странно, однако, что они до сих пор не изменили это в руководстве. (Или, может быть, я что-то упустил?)