绑定到ListView fieldName来自资源

时间:2012-04-30 18:07:27

标签: asp.net listview data-binding localization resources

我有一个ListView,在其ItemTemplate中我绑定了一个字段,如:
<%#Eval("FiledName") %>
但是FeildName itselfe来自Resources,例如:
<asp:Localize Text="<%$ Resources: Resources, productnamefield %>" runat="server" />
现在我需要类似的东西:
<%#Eval(<asp:Localize Text="<%$ Resources: Resources, productnamefield %>" runat="server" />) %>
但它不正确(编译错误)
我如何将这两者结合起来?

1 个答案:

答案 0 :(得分:3)

这不会影响这项工作:

protected void yourListView_ItemDataBound(object sender, ListViewItemEventArgs e)
{
    if (e.Item.ItemType == ListViewItemType.DataItem)
    {
        DataRowView drv = e.Item.DataItem as DataRowView;

        Label filedName = e.Item.FindControl("FiledNameLabel") as Label;      

        //Get resource value
        string resourceValue = GetGlobalResourceObject("ResourceFile","productnamefield").ToString();  
        filedName.Text = drv[resourceValue].ToString();
    }
}

然后,您将在ListView中使用Label来显示值。