My.Application.ChangeCulture Method
Changes the culture used by the current thread for string manipulation and for string formatting.
' Usage
My.Application.ChangeCulture(cultureName)
' Declaration
Public Sub ChangeCulture( _
ByVal cultureName As String _
)
Parameters
- cultureName
String. Name of the culture as a string. For a list of possible names, see CultureInfo.
Exceptions
The following conditions can cause an exception:
The cultureName argument is Nothing (ArgumentNullException).
The cultureName argument is not a valid culture name (ArgumentException).
Remarks
The My.Application.ChangeCulture method changes the current thread's CurrentCulture property. CurrentCulture determines the default formats for dates, times, currency, numbers, sorting order of text, string comparisons, and casing for all computations on that thread.
To retrieve the current culture, you can use the My.Application.Culture Property or the CurrentCulture property.
The CurrentCulture setting is different from a language setting. It contains only data related to the standard settings for a geographical region. Therefore, the CurrentCulture property can only be set to a specific culture or to the InvariantCulture.
Use the My.Application.ChangeUICulture method to change the culture that the current thread uses for retrieving culture-specific resources.
Security Note |
---|
The My.Application.ChangeCulture method requires a SecurityPermission with the ControlThread set. Manipulating threads is dangerous because of the security state associated with threads. Therefore, this permission should be given only as necessary to trustworthy code. You cannot change a thread's culture in semi-trusted code. |
Example
This example demonstrates how changing the culture changes the string representation of dates.
Private Sub TestChangeCulture()
' Store the current culture.
Dim currentculture As String = My.Application.Culture.Name
MsgBox("Current culture is " & currentculture)
Dim jan1 As New Date(2005, 1, 1, 15, 15, 15)
My.Application.ChangeCulture("en-US")
MsgBox("Date represented in en-US culture: " & jan1)
' 1/1/2005 3:15:15 PM
My.Application.ChangeCulture("")
MsgBox("Date represented in invariant culture" & jan1)
' 01/01/2005 15:15:15
' Restore the culture.
My.Application.ChangeCulture(currentculture)
End Sub
Requirements
Namespace: Microsoft.VisualBasic.ApplicationServices
Class: WindowsFormsApplicationBase, ApplicationBase
Assembly: Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)
Availability by Project Type
Project type | Available |
---|---|
Windows Application |
Yes |
Class Library |
Yes |
Console Application |
Yes |
Windows Control Library |
Yes |
Web Control Library |
No |
Windows Service |
Yes |
Web Site |
No |
Permissions
The following permission may be necessary:
Permission | Description |
---|---|
SecurityPermission |
Describes a set of security permissions applied to code. Associated enumeration: ControlThread. |
For more information, see Code Access Security and Requesting Permissions.
See Also
Reference
My.Application Object
My.Application.Culture Property
My.Application.ChangeUICulture Method
Microsoft.VisualBasic.ApplicationServices.ApplicationBase.ChangeCulture(System.String)
CurrentCulture