如何从Silverlight应用程序中检测操作系统?

spr*_*ite 8 operating-system runtime detection silverlight-3.0

我有一个Silverlight3应用程序,可以在Windows和Mac OS环境中运行.我想在运行时知道我的应用程序是在Windows还是Mac上运行,因此我可以根据用户在其选择的操作系统中习惯的方式调整一些内容.

例如,在Windows中,使用"确定""取消"按钮是常态,而在Mac OS中,规范是"取消""确定"按钮(反向顺序).

有任何想法吗?

小智 13

有两种方法.

来自Silverlight:

string os = Environment.OSVersion.Platform.ToString();
string version = Environment.OSVersion.Version.ToString();
Run Code Online (Sandbox Code Playgroud)

从ASP.NET并将其发送到Silverlight:

StringBuilder sb = new StringBuilder();
sb.AppendFormat("UserAgent={0}", Request.UserAgent);
Xaml1.InitParameters = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

  • 嗯..在运行Silverlight 5的64位IE上的64位Win7上它仍然说Win32NT. (2认同)