Разработка независимого от культуры ввода даты рождения, состоящего из трех select: год, месяц и день.
В .NET, как мне получить правильный порядок отображения трех select для данной культуры, то есть:
┌─────────────┬─┐ ┌──────────────┬─┐ ┌────────────┬─┐
│ Select year │v│ │ Select month │v│ │ Select day │v│
└─────────────┴─┘ └──────────────┴─┘ └────────────┴─┘
┌─────────────┬─┐ ┌──────────────┬─┐ ┌────────────┬─┐
│ Select day │v│ │ Select month │v│ │ Select year│v│
└─────────────┴─┘ └──────────────┴─┘ └────────────┴─┘
или
┌─────────────┬─┐ ┌──────────────┬─┐ ┌────────────┬─┐
│ Select month│v│ │ Select day │v│ │ Select year│v│
└─────────────┴─┘ └──────────────┴─┘ └────────────┴─┘
* UPDATE *.... Спасибо всем за ваши ответы, это заставило меня придумать эту маленькую функцию:
Public Function GetDateElementAtPos(ByVal pos As Integer) As String
Return Mid(Me.myCultureInfo.DateTimeFormat.ShortDatePattern.Split(Me.myCultureInfo.DateTimeFormat.DateSeparator)(pos), 1, 1).ToLower
End Function
Где myCultureInfo
представляет собой инициализированную Globalization.CultureInfo
. Я использую ее следующим образом:
Dim s as new stringbuilder
For i As Integer = 0 To 2
Select Case GetDateElementAtPos(i)
Case "y"
s.append(**year select html goes here**)
Case "m"
s.append(**month select html goes here**)
Case "d"
s.append(**day select html goes here**)
End Select
Next