In questo post vediamo come creare un'applicazione che si autoconfiguri, in termini di CSS, a secondo che la cultura del Browser abbia un tipo di scrittura RTL oppure LTR. In particolare sfrutteremo il metodo Thread.CurrentThread.CurrentUICulture.TextInfo.IsRightToLeft
La soluzione è molto semplice. I passi da seguire sono i seguenti:
1) Creiamo due CSS: uno per le culture di tipo LTR e uno per quelle RTL
style_LTR.css
body {direction:ltr;}
...
...
style_RTL.css
body {direction:rtl;}
...
...
2) Nella nostra pagina Aspx, aggiungiamo questo codice quando carichiamo i CSS:
<head runat="server">
<title>Test RTL LTR</title>
<%
if (Thread.CurrentThread.CurrentUICulture.TextInfo.IsRightToLeft == true)
{
%>
<link rel="stylesheet" href="style_RTL.css" type="text/css" media="screen,projection" />
<%
}
else
{
%>
<link rel="stylesheet" href="style_LTR.css" type="text/css" media="screen,projection" />
<%
}
%>
Se la cultura e' di tipo RTL, il CSS caricato sara' style_RTL.css