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
- Наследование
- Атрибуты
Требования к 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 |
Свойство только для чтения, которое возвращает строковое значение идентификатора формата, соответствующее формату веб-ссылки. |