这里有相对较新的Windows Phone开发人员,正在寻求帮助。基本上我正在搞乱我正在寻找最终投放市场的应用程序。
基本上应用程序正在倒计时到特定日期,我已经倒计时没有问题了,但是我确实遇到了日期格式的问题,因为我在英国并且日期格式是dd / MM / yyyy,而州是MM / dd / yyyy。因此该应用程序对美国的任何人都是负数。基本上我需要一些解决方法的帮助,无论是为我的应用程序设置通用日期格式还是类似的东西。这是倒计时的代码:
DateTime startDate = DateTime.Now;
var launch = DateTime.Parse("01/08/2012 00:00:00 AM");
TimeSpan t = launch - startDate;
Countdown.Text = string.Format("\r {0}\r Days \r {1}\r Hours \r {2}\r Minutes \r {3}\r Seconds", t.Days, t.Hours, t.Minutes, t.Seconds);
答案 0 :(得分:2)
如果您对日期进行硬编码,那么您应该使用DateTime(int,int,int)
构造函数,而不是从字符串中解析它。这三个参数将始终被解释为年,月,日(按此顺序)。
var launch = new DateTime(2012, 08, 11);
答案 1 :(得分:0)
DateTime的ToString()方法有一个带有自定义格式字符串的重载。
http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx
要求或建立用户区域并以正确的格式向他发送日期将非常简单。
除此之外,还有ToString的重载,它接受System.Globalization.CultureInfo对象,因此你可以做类似的事情。
myDateTime.ToString(new System.Globalization.CultureInfo(Thread.CurrentThread.CurrentCulture.Name));
这可以根据操作系统设置为您提供正确格式化用户区域的日期时间。
答案 2 :(得分:0)
您还可以通过设置当前区域性或使用CultureInfo格式化字符串来解析和格式化其他区域性的日期。
有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/5hh873ya.aspx。