ResourceLoader Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет упрощенный доступ к ресурсам приложения, таким как строки пользовательского интерфейса приложения.
Эквивалентный API WinUI 2 для UWP: Microsoft.Windows.ApplicationModel.Resources.ResourceLoader (для WinUI в Windows App SDK см. Windows App SDK пространства имен).
public ref class ResourceLoader sealed
/// [Windows.Foundation.Metadata.Activatable(Windows.ApplicationModel.Resources.IResourceLoaderFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ResourceLoader final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.ApplicationModel.Resources.IResourceLoaderFactory, 65536, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class ResourceLoader final
[Windows.Foundation.Metadata.Activatable(typeof(Windows.ApplicationModel.Resources.IResourceLoaderFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ResourceLoader
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.ApplicationModel.Resources.IResourceLoaderFactory), 65536, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class ResourceLoader
function ResourceLoader(name)
Public NotInheritable Class ResourceLoader
- Наследование
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Примеры
Используйте метод ResourceLoader.GetString , чтобы получить строковый ресурс, идентифицируемый с помощью "Farewell".
var resourceLoader = Windows.ApplicationModel.Resources.ResourceLoader.GetForCurrentView();
var text = resourceLoader.GetString("Farewell");
auto resourceLoader{ Windows::ApplicationModel::Resources::ResourceLoader::GetForCurrentView() };
winrt::hstring text{ resourceLoader.GetString(L"Farewell") };
auto resourceLoader = Windows::ApplicationModel::Resources::ResourceLoader::GetForCurrentView();
String^ text = resourceLoader->GetString("Farewell");
Комментарии
Объект ResourceLoader инкапсулирует определенный Объект ResourceMap и ResourceContext, объединенные в простой API.
При получении ResourceLoader можно указать определенную карту ресурсов; Если карта ресурсов не указана, ResourceLoader предоставит доступ к поддереву "Ресурсы" main карты ресурсов приложения.
Как правило, ресурсы могут быть чувствительны к масштабу или другим характеристикам отображения. По этой причине контексты ресурсов обычно связаны с определенным представлением. Так как ResourceLoader инкапсулирует контекст ресурса, это также относится к ResourceLoader. ResourceLoader, полученный с помощью GetForCurrentView, имеет контекст ресурса, связанный с представлением, в котором он был получен. Независимое от представления средство ResourceLoader также можно получить с помощью GetForViewIndependentUse.
- Получите коэффициент масштабирования для текущего представления с помощью класса DisplayInformation вместо нерекомендуемого класса DisplayProperties .
- Приложения, которые задают явные значения ширины и высоты элементов, по-прежнему должны работать нормально, за исключением отображения размытых изображений.
- Получите ресурсы, которые не связаны ни с каким представлением, получив ResourceLoader через GetForViewIndependentUse.
См. также статью Размеры экрана и точки останова.
Журнал версий
Версия Windows | Версия пакета SDK | Добавленная стоимость |
---|---|---|
1903 | 18362 | GetForUIContext |
Конструкторы
ResourceLoader() |
Примечание ResourceLoader() может быть изменен или недоступен для выпусков после Windows 8.1. Вместо этого используйте GetForCurrentView(). Создает новый объект ResourceLoader для поддеревь "Resources" текущего приложения main ResourceMap. Эквивалентный API WinUI 2 для UWP: ResourceLoader() (для WinUI в Windows App SDK см. Windows App SDK пространства имен). |
ResourceLoader(String) |
Примечание ResourceLoader(String) может быть изменен или недоступен для выпусков после Windows 8.1. Вместо этого используйте GetForCurrentView(String). Создает новый объект ResourceLoader для указанного ResourceMap. Эквивалентный API WinUI 2 для UWP: ResourceLoader(String) (для WinUI в Windows App SDK см. Windows App SDK пространства имен). |
Методы
GetDefaultPriPath(String) |
Предоставляет расположение |
GetForCurrentView() |
Возвращает объект ResourceLoader для поддеревь Resources текущего запущенного приложения main ResourceMap. Этот ResourceLoader использует контекст по умолчанию, связанный с текущим представлением. |
GetForCurrentView(String) |
Возвращает объект ResourceLoader для указанного ResourceMap. Этот ResourceLoader использует контекст по умолчанию, связанный с текущим представлением. |
GetForUIContext(UIContext) |
Возвращает объект ResourceLoader для указанного UIContext. |
GetForViewIndependentUse() |
Возвращает объект ResourceLoader для поддеревь Resources текущего запущенного приложения main ResourceMap. Этот ResourceLoader использует контекст по умолчанию, не связанный ни с каким представлением. |
GetForViewIndependentUse(String) |
Возвращает объект ResourceLoader для указанного ResourceMap. Этот ResourceLoader использует контекст по умолчанию, не связанный ни с каким представлением. |
GetString(String) |
Возвращает наиболее подходящее строковое значение ресурса, заданное идентификатором ресурса, для стандартного resourceContext представления, в котором ResourceLoader был получен с помощью ResourceLoader.GetForCurrentView. Эквивалентный API WinUI 2 для UWP: Microsoft.Windows.ApplicationModel.Resources.ResourceLoader.GetString (для WinUI в Windows App SDK см. Windows App SDK пространства имен). |
GetStringForReference(Uri) |
Примечание GetStringForReference может быть изменен или недоступен для выпусков после Windows 8.1. Вместо этого используйте GetStringForUri. Возвращает наиболее подходящее строковое значение ресурса, указанное как универсальный код ресурса (URI ) для идентификатора ресурса по умолчанию для ResourceContext текущего запущенного приложения. |
GetStringForUri(Uri) |
Возвращает наиболее подходящее строковое значение ресурса, заданное универсальным идентификатором ресурса (URI), для resourceContext по умолчанию для текущего запущенного приложения. Эквивалентный API WinUI 2 для UWP: Microsoft.Windows.ApplicationModel.Resources.ResourceLoader.GetStringForUri (для WinUI в Windows App SDK см. Windows App SDK пространства имен). |