如何使用GetIndexedPropertyValue?
我有以下 ListView:
<asp:ListView ID="lv_Announcements" runat="server">
<LayoutTemplate>
<asp:PlaceHolder ID="itemPlaceHolder" runat="server" />
</LayoutTemplate>
<ItemTemplate>
<a href="<%# Eval("Title") %>"><%# Eval("Title") %></a><br />
<%# DataBinder.GetIndexedPropertyValue(Fields, "[\"Body\"]")%><br /><br />
</ItemTemplate>
</asp:ListView>
在我后面的代码中,我正在这样做:
lv_Announcements.DataSource = cur.Web.Lists["Announcements"].Items;
lv_Announcements.DataBind();
其中 Items
是 SPListItemCollection。每当我运行我的代码时,我都会收到以下错误:
名称“Fields”不存在于 当前上下文
我应该在这里做一些不同的事情吗?
I have the following ListView:
<asp:ListView ID="lv_Announcements" runat="server">
<LayoutTemplate>
<asp:PlaceHolder ID="itemPlaceHolder" runat="server" />
</LayoutTemplate>
<ItemTemplate>
<a href="<%# Eval("Title") %>"><%# Eval("Title") %></a><br />
<%# DataBinder.GetIndexedPropertyValue(Fields, "[\"Body\"]")%><br /><br />
</ItemTemplate>
</asp:ListView>
In my code behind I am doing this:
lv_Announcements.DataSource = cur.Web.Lists["Announcements"].Items;
lv_Announcements.DataBind();
Where Items
is a SPListItemCollection. When ever I run my code I get the following error:
The name 'Fields' does not exist in
the current context
Should I be doing something differently here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我最终这样做了:
DataItem 是该行绑定到的 SPListItem,因此您可以这样想:
之前它会是这样的:
它不会返回我想要的信息。
I ended up doing it like this:
DataItem is the SPListItem that the row is being bound to so you can think of it like this:
Before it would have been like this:
Which does not return the information I wanted.