2010-01-19 89 views
2

我想本地化标准ASP.NET登录控制。当我更改页面文化时,我希望标签“密码”能够自动翻译。我知道如何使用ASP.NET中的资源,但我不想自己做本地化,我相信微软已经翻译了所有的标题和错误消息。本地化ASP.NET登录控制

回答

3

按照使用说明:

  1. Download and install the German language pack for .NET 2.0

  2. 在网页表单的来源,添加UICulture="auto"<%@ Page指令,例如:在浏览器<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" UICulture="auto" %>

  3. 查看此页面,更改浏览器的首选语言为 德语,然后您应该看到以德语显示的登录控件。

如果您安装了其他语言包,用户浏览你的网站可以设置 他们的首选语言和您的网页将在语言,如果 其安装显示。

希望这对你有所帮助。

Source

+1

谢谢您的回答,我已经尝试安装.NET 3.5 SP1语言包,但安装失败,由于兼容性问题。 .NET 2.0语言包也未能安装,因为'此产品已安装'。 – 2010-01-20 05:59:49

1

您可以尝试在你的登录控制,按提示依次布局模板。

在这里,你会得到你的控制,就像这样:

<asp:Login ID="loginForm" runat="server" Height="200px" Width="442px"> 
          <LayoutTemplate> 
           <table cellpadding="1" cellspacing="0" style="border-collapse:collapse;"> 
            <tr> 
             <td class="style3"> 
              <table cellpadding="0" style="height:200px;"> 
               <tr> 
                <td align="center" colspan="2"> 
                 &nbsp;</td> 
               </tr> 
               ...etc 

你会发现你的控件的用户名标签:

<asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName" Text="<%$Resources:YourResourcefile,Key%>"></asp:Label> 

,你可以本地化你想要什么。

0

如果您不能或不想安装语言包,则可以使用UserNameLabelText, PasswordLabelText and LoginButtonText属性控制Login控件显示的文本。它们设置为自己的资源,例如:

UserNameLabelText="<%$ Resources:resxfilename, m_lblUsername %>"