2

这是我的代码

 var body="Hello World";
 var mailto = new Uri("mailto:?to=a@a.com&subject=Hello&body="+body); 
 await Windows.System.Launcher.LaunchUriAsync(mailto);

我想在第一行显示“Hello”,在第二行显示“World”。

我试过了

  var body="Hello" + "/n" + "World"

但它不起作用。我们怎样才能做到这一点?

4

3 回答 3

1

尝试这个

var body="Hello%0D%0AWorld"
var mailto = new Uri("mailto:?to=a@a.com&subject=Hello&body=" + body); 
await Windows.System.Launcher.LaunchUriAsync(mailto);

你必须使用%0D%0A代替\n

于 2013-06-19T15:40:53.457 回答
0

其次是@Xyroid,更通用的方法如下。

var body = "Hello" + Environment.NewLine + "World\nHere is Third Line" ;
body = System.Net.WebUtility.UrlEncode(body);
var mailto = new Uri("mailto:?to=a@a.com&subject=Hello&body=" + body); 
await Windows.System.Launcher.LaunchUriAsync(mailto);

请参阅System.Net.WebUtility.UrlEncode()将某些文本转换为基于 uri 的参数的方法。

于 2013-06-20T12:07:23.587 回答
-1

试试这个代码

StringBuilder 主体 = 新 StringBuilder(); body.AppendLine("你好"); body.AppendLine("世界");

字符串 mailBody=body.ToString();

于 2013-06-19T13:12:20.760 回答