如何将协议激活链接复制到 UWP C# 中的剪贴板



>我正在尝试将链接复制到用户剪贴板,他们在可以粘贴电子邮件或消息聊天(如 Teams 或 Slack (后单击按钮。单击按钮后运行的代码看起来有点像这样

var dataPackage = new DataPackage();
dataPackage.RequestedOperation = DataPackageOperation.Copy | DataPackageOperation.Link;
var uri = new Uri("myapplink:?query&param1=value1");
dataPackage.SetApplicationLink(uri);
dataPackage.SetText("Really cool link to my app")
Clipboard.SetContent(dataPackage);
Clipboard.Flush();

但这只会在我的消息中复制"非常酷的链接到我的应用程序",而不是非常酷的链接到我的应用程序。

以前有人做过这件事,可以提供帮助吗?

请避免调用Flush方法,它可能会破坏数据。

设置数据

var dataPackage = new DataPackage();
dataPackage.RequestedOperation = DataPackageOperation.Copy | DataPackageOperation.Link;
var uri = new Uri("myapp:privacy-webcam", UriKind.Absolute);
dataPackage.SetApplicationLink(uri);
dataPackage.SetText("Really cool link to my app");
Clipboard.SetContent(dataPackage);

获取数据

DataPackageView dataPackageView = Clipboard.GetContent();
if (dataPackageView.Contains(StandardDataFormats.ApplicationLink) && dataPackageView.Contains(StandardDataFormats.Text))
{
var uri = await dataPackageView.GetApplicationLinkAsync();
var text = await dataPackageView.GetTextAsync();               
}

最新更新