2009-09-10 12 views
8

Mam aplikację Silverlight3, która jest przeznaczona do pracy w środowiskach Windows i Mac OS. Chciałbym wiedzieć, w czasie wykonywania, jeśli moja aplikacja działa na Windows lub Mac, dzięki czemu mogę poprawić kilka rzeczy w sposób, w jaki użytkownicy są przyzwyczajeni w ich systemie operacyjnym z wyboru.Jak wykryć system operacyjny z aplikacji silverlight?

Na przykład w systemie Windows normą jest używanie przycisków "OK" "Anuluj", natomiast w systemie Mac OS normą jest "Anuluj" przyciski "OK" (kolejność odwrotna).

Wszelkie pomysły?

Odpowiedz

13

Istnieją dwa sposoby.

Od Silverlight:

string os = Environment.OSVersion.Platform.ToString(); 
string version = Environment.OSVersion.Version.ToString(); 

z ASP.NET i wysłać go do Silverlight:

StringBuilder sb = new StringBuilder(); 
sb.AppendFormat("UserAgent={0}", Request.UserAgent); 
Xaml1.InitParameters = sb.ToString(); 
+2

Hmm .. na Win7 64 bit na 64 bit IE działa Silverlight 5 i wciąż mówi Win32NT. – felickz

-1

Nie znasz Silverlight, ale założę się, że możesz uzyskać nagłówek HTTP User-Agent, który zawiera nazwę systemu operacyjnego.