我在asp.net 4项目的ascx用户控件中有一个基本的动态创建的复选框列表。现在它用于向checkboxlist控件添加可能的角色列表(例如,admin,officer,customer),然后用户通过查找这些字符串来检查他们想要应用的角色。本地化动态创建的CheckBoxList控件中的字符串
代码如下。
在网页...
<asp:CheckBoxList ID="AvailableToRoles" runat="server" CssClass="Labels"
RepeatColumns="3"></asp:CheckBoxList>
在Page_Load中调用字符串作为数据源的列表。
this.AvailableToRoles.DataSource = Contact.GetPossibleRoles();
this.AvailableToRoles.DataBind();
然后,在连接到按钮的更新它调用以下字符串来检查的CheckBoxList角色和角色添加到联系人。
List<Role> Roles = new List<Role>();
Roles.Add(Role.GetRole("Admin"));
Roles.Add(Role.GetRole("Officer"));
foreach (ListItem c in this.AvailableToRoles.Items)
{
if (c.Selected)
{
if (c.Text != "Admin")
{
Roles.Add(Role.GetRole(c.Text.Trim()));
}
}
}
那么现在我需要本地化这个。我有全球资源字符串,列出了可能被选中的所有角色,我需要它向用户显示英语,西班牙语,德语和法语的全球资源,然后在稍后检查时,它会搜索角色而不是资源字符串。
不太确定如何做到这一点,但不必彻底改变代码。有没有一种简单的方法来使这个工作?