绑定到ListView的fieldName来自资源

3
我有一个ListView,在它的ItemTemplate中我绑定了一个字段,像这样:
<%#Eval("FiledName") %>
但是FieldName本身来自资源文件,像这样:
<asp:Localize Text="<%$ Resources: Resources, productnamefield %>" runat="server" />
现在我需要像这样的东西:
<%#Eval(<asp:Localize Text="<%$ Resources: Resources, productnamefield %>" runat="server" />) %>
但它不正确(有编译错误)
我应该如何将这两个组合起来?

嗯嗯。我能想到的唯一方法涉及反射。 - System Down
那么必须使用“Eval”,而不能在ListView中将数据绑定到Web控件(如Literal)吗? - SurinderBhomra
也许sbhomra是可能的,但我不知道怎么做... - Mehrdad
1个回答

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();
    }
}

您将使用一个标签(Label)在您的ListView中显示该值。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接