Thiết kế đầu vào ngày sinh độc lập văn hóa bao gồm ba lựa chọn: năm, tháng và ngày.Trong .NET, làm thế nào để nhận được thứ tự YYYY, MM và DD cho một nền văn bản nhất định
Trong .NET, làm thế nào để tôi nhận được thứ tự hiển thị đúng trong ba cho một nền văn hóa nhất định, ví dụ .:
┌─────────────┬─┐ ┌──────────────┬─┐ ┌────────────┬─┐
│ Select year │v│ │ Select month │v│ │ Select day │v│
└─────────────┴─┘ └──────────────┴─┘ └────────────┴─┘
┌─────────────┬─┐ ┌──────────────┬─┐ ┌────────────┬─┐
│ Select day │v│ │ Select month │v│ │ Select year│v│
└─────────────┴─┘ └──────────────┴─┘ └────────────┴─┘
hoặc
┌─────────────┬─┐ ┌──────────────┬─┐ ┌────────────┬─┐
│ Select month│v│ │ Select day │v│ │ Select year│v│
└─────────────┴─┘ └──────────────┴─┘ └────────────┴─┘
* CẬP NHẬT * Nhờ tất cả cho câu trả lời của bạn, nó làm cho tôi đi lên với chức năng nhỏ này:
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
Trường hợp myCultureInfo
đại diện cho Globalization.CultureInfo
được khởi tạo. Tôi sử dụng nó như thế này:
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
Rất vui khi bạn tìm thấy giải pháp Muleskinner, nếu đây là ứng dụng web, hãy đảm bảo bạn sử dụng CurrentUICulture, nếu không bạn sẽ trả về văn hóa của máy chủ IIS. – magritte
@Tony Leeper Có của nó cho một ứng dụng web, và có tôi biết cảm ơn. Nó được sử dụng sau ủy quyền người dùng và người dùng tự chọn văn hóa của mình – Muleskinner