Поделиться через


StandardDataFormats Класс

Определение

Содержит статические свойства, возвращающие строковые значения. Каждая строка соответствует известному идентификатору формата. Используйте этот класс, чтобы избежать ошибок при использовании строковых констант для указания форматов данных.

public ref class StandardDataFormats abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class StandardDataFormats final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public static class StandardDataFormats
Public Class StandardDataFormats
Наследование
Object Platform::Object IInspectable StandardDataFormats
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Примеры

В этом примере показано, как получить общий текст (с помощью StandardDataFormats.Text) или общий файл или папку (с помощью StandardDataFormats.StorageItems). Дополнительные примеры см. в примерах буфера обмена и в примере ShareTarget.

public async Task ActivateAsync(ShareTargetActivatedEventArgs args)
{
    ShareOperation shareOperation = args.ShareOperation;
    if (shareOperation.Data.Contains(StandardDataFormats.Text))
    {
        string text = await shareOperation.Data.GetTextAsync();

        // To output the text from this example, you need a TextBlock control
        // with a name of "sharedContent".
        sharedContent.Text = "Text: " + text;
    }

    if (shareOperation.Data.Contains(StandardDataFormats.StorageItems)) 
    {
        shareOperation.ReportStarted();
        IReadOnlyList<IStorageItem> storageItems = null;
        storageItems = await shareOperation.Data.GetStorageItemsAsync();
        string fileList = String.Empty;

        for (int index = 0; index < storageItems.Count; index++) 
        {
            fileList += storageItems[index].Name;
                if (index < storageItems.Count - 1) {
                    fileList += ", ";
                }
            }

        // To output the text from this example, you need a TextBlock control
        // with a name of "sharedContent".
        sharedContent.Text += "StorageItems: " + fileList + Environment.NewLine;

        shareOperation.ReportCompleted();
    }

    Window.Current.Content = this;
    Window.Current.Activate();
}

Комментарии

Класс DataPackage поддерживает несколько типов форматов. Всякий раз, когда необходимо указать формат, рекомендуется использовать свойства класса StandardDataFormats вместо строковых значений. Это гарантирует согласованность между исходным и целевым приложениями.

Класс DataPackage поддерживает ряд устаревших форматов для взаимодействия между приложениями UWP и классическими приложениями. Чтобы получить эти форматы, передайте одну из следующих строк в метод DataPackageView.GetDataAsync вместо значения из класса StandardDataFormats .

Если имя формата имеет следующий вид:GetDataAsync() извлекает:
"AnsiText"Строка для CF_TEXT.
DeviceIndependentBitmapПоток для HGLOBAL, соответствующий CF_DIB.
DeviceIndependentBitmapV5Поток для HGLOBAL, соответствующий CF_DIBV5.
"DataInterchangeFormat"Поток для HGLOBAL, соответствующий CF_DIF.
EnhancedMetafileПоток для HENHMETAFILE, соответствующий CF_ENHMETAFILE.
"Языковой стандарт"Поток для HGLOBAL, соответствующий CF_LOCALE
"OEMText"Строка для CF_OEMTEXT.
"PenData"Поток для HGLOBAL, соответствующий CF_PENDATA
"RiffAudio"Поток для HGLOBAL, соответствующий CF_RIFF.
"SymbolicLink"Поток для HGLOBAL, соответствующий CF_SYLK.
"TaggedImageFileFormat"Поток для HGLOBAL, соответствующий CF_TIFF.
"WaveAudio"Поток для HGLOBAL, соответствующий CF_WAVE.

Среда выполнения Windows предоставляет ограниченную поддержку метафайлов. В частности, среда выполнения Windows:

  • Поддерживает отрисовку метафайлов, но не создает их.
  • Поддерживает формат CF_ENHMETAFILE ("EnhancedMetafile"), но не CF_METAFILEPICT.
  • Поддерживает запрос данных в формате EnhancedMetafile, но не предоставляет их; то есть вызов SetData("EnhancedMetafile", <data>) не будет работать.
  • Предоставляет ограниченную поддержку через API буфера обмена метафайлов между приложением UWP и классическими приложениями.

Журнал версий

Версия Windows Версия пакета SDK Добавленная стоимость
1803 17134 UserActivityJsonArray

Свойства

ApplicationLink

Свойство только для чтения, которое возвращает значение строки идентификатора формата, соответствующее формату ссылки активации.

Bitmap

Свойство, доступное только для чтения, которое возвращает строковое значение идентификатора формата, соответствующее формату bitmap.

Html

Свойство только для чтения, которое возвращает значение строки идентификатора формата, соответствующее формату HTML.

Rtf

Свойство только для чтения, которое возвращает значение строки идентификатора формата, соответствующее формату RTF.

StorageItems

Свойство только для чтения, которое возвращает значение строки идентификатора формата, соответствующее формату элемента хранения (для файлов и папок).

Text

Свойство, доступное только для чтения, которое возвращает строковое значение идентификатора формата, соответствующее формату Text.

Uri

Примечание

URI может быть изменен или недоступен для выпусков после Windows 8.1. Вместо этого используйте ApplicationLink или WebLink.

Свойство, доступное только для чтения, которое возвращает значение строки идентификатора формата, соответствующее формату URI.

UserActivityJsonArray

Свойство, доступное только для чтения, которое возвращает значение строки идентификатора формата, соответствующее формату массива UserActivity JSON.

WebLink

Свойство только для чтения, которое возвращает строковое значение идентификатора формата, соответствующее формату веб-ссылки.

Применяется к