My.Application.ChangeCulture 方法

更新:2007 年 11 月

更改当前线程用于字符串操作和字符串格式设置的区域性。

' Usage
My.Application.ChangeCulture(cultureName)
' Declaration
Public Sub ChangeCulture( _
   ByVal cultureName As String _
)

参数

  • cultureName
    String。区域性的名称,字符串形式。有关可能名称的列表,请参见 CultureInfo

异常

下面的情况可能会导致异常:

备注

My.Application.ChangeCulture 方法更改当前线程的 CurrentCulture 属性。 CurrentCulture 确定该线程上日期、时间、货币和数字的默认格式、文本排序顺序、字符串比较以及所有计算的大小写。

要检索当前区域性,可以使用 My.Application.Culture 属性CurrentCulture 属性。

CurrentCulture 设置与语言设置不同。它仅包含与地理区域的标准设置相关的数据。因此,只能将 CurrentCulture 属性设置为特定区域性或设置为 InvariantCulture

使用 My.Application.ChangeUICulture 方法更改当前线程用于检索区域性特定资源的区域性。

安全说明:

My.Application.ChangeCulture 方法需要设置了 ControlThreadSecurityPermission。由于安全状态与线程关联,对线程进行操作是危险的。因此,仅在必要时才向可信代码授予此权限。不能在不完全受信任的代码中更改线程的区域性。

示例

此示例演示更改区域性将如何更改日期的字符串表达式。

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

要求

命名空间:Microsoft.VisualBasic.ApplicationServices

类:WindowsFormsApplicationBaseApplicationBase

**程序集:**Visual Basic Runtime Library(位于 Microsoft.VisualBasic.dll 中)

按项目类型列出可用性

项目类型

可用

Windows 应用程序

类库

控制台应用程序

Windows 控件库

Web 控件库

Windows 服务

网站

权限

以下权限可能是必需的:

权限

说明

SecurityPermission

描述应用于代码的安全权限集。关联的枚举:ControlThread

有关更多信息,请参见代码访问安全性请求权限

请参见

参考

My.Application 对象

My.Application.Culture 属性

My.Application.ChangeUICulture 方法

ApplicationBase.ChangeCulture

CurrentCulture