DataPackage.ResourceMap 属性

定义

将 URI 映射到文件。 用于确保引用的内容 ((如 HTML 内容中的图像) )添加到 DataPackage

public:
 property IMap<Platform::String ^, RandomAccessStreamReference ^> ^ ResourceMap { IMap<Platform::String ^, RandomAccessStreamReference ^> ^ get(); };
IMap<winrt::hstring, RandomAccessStreamReference const&> ResourceMap();
public IDictionary<string,RandomAccessStreamReference> ResourceMap { get; }
var iMap = dataPackage.resourceMap;
Public ReadOnly Property ResourceMap As IDictionary(Of String, RandomAccessStreamReference)

属性值

指定名称/值对,该对指定具有相应 StreamReference 对象的 HTML 路径。

示例

public void ShareSourceLoad()
{
    DataTransferManager dataTransferManager = DataTransferManager.GetForCurrentView();
    dataTransferManager.DataRequested += new TypedEventHandler<DataTransferManager, DataRequestedEventArgs>(this.DataRequested);
}

async void DataRequested(DataTransferManager sender, DataRequestedEventArgs e)
{
    string htmlExample = "<p>Here is our store logo: <img src='assets/logo.png'>.</p>";
    string fileExample = "assets\\logo.png";
    RandomAccessStreamReference streamRef = null;
    Windows.Storage.StorageFile file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(fileExample);
    try
    {
        streamRef = Windows.Storage.Streams.RandomAccessStreamReference.CreateFromFile(file);
    }
    catch (Exception ex)
    {
        // TODO: Handle the exception.
    }
    string htmlFormat = Windows.ApplicationModel.DataTransfer.HtmlFormatHelper.CreateHtmlFormat(htmlExample);
    DataRequest request = e.Request;
    request.Data.Properties.Title = "Share HTML Example";
    request.Data.Properties.Description = "An example of how to share HTML.";
    request.Data.SetHtmlFormat(htmlFormat);
    request.Data.ResourceMap[fileExample] = streamRef;
}

注解

HTML 内容通常包含对其他文件的引用。 最常见的示例是引用特定文件的 img 标记。 若要确保图像随 HTML 内容的其余部分一起发送,需要使用 ResourceMap将 URI 字符串映射到实际数据。 可以在 如何共享 HTML 中详细了解这一点。

适用于