2011-03-27 17 views
6

¿Qué pasa con este código?Calendario persa no válido con CultureInfo

error (Excepción) mensaje:

No

un calendario válido para la cultura determinada.

System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("fa-Ir"); //Error 
ci.DateTimeFormat.Calendar = new System.Globalization.PersianCalendar(); 
Application.CurrentCulture = ci; 

Y lo que es su solución?
¿Puedo agregar un tipo Calendar a la opción regional de Windows XP?

+0

Hay algo de información acerca de los problemas con el calendario persa [en MSDN (véase la parte inferior de la página)] (http://msdn.microsoft .com/en-us/library/system.globalization.persiancalendar.aspx). Tal vez puede ayudar un poco. – Vlad

Respuesta

3

Se menciona explícitamente en el artículo de MSDN para PersianCalendar

Su aplicación no debe utilizar un objeto PersianCalendar como el calendario predeterminado para un cultivo. El calendario predeterminado es especificado por la propiedad CultureInfo.Calendar y debe ser uno de los calendarios devueltos por los CultureInfo.OptionalCalendars propiedad. Actualmente, la clase PersianCalendar no es un calendario opcional para cualquier cultura compatible con la clase CultureInfo y por lo tanto no puede ser un calendario predeterminado.

No puede hacer esto. Use el calendario tal como está.

+0

¿Es posible agregar un nuevo tipo de cultura en Windows XP regional y las opciones de idioma en el Panel de control? –

+0

No, no puedes arreglar esto sin importar lo que intentes. –

+0

Entonces, ¿hay alguna solución que me ayude a usar controles VS (como datetimepicker) con calendario persa en mis proyectos de aplicación? –