ASPxGridView和Eval(字符串)方法

时间:2012-01-27 17:13:39

标签: asp.net devexpress aspxgridview

我正在尝试将列添加到ASPxGridView,它将链接到其他页面:

  <Columns>
        ...
        <dxwgv:GridViewDataColumn Caption=" " VisibleIndex="10">
            <DataItemTemplate>
                <dxe:ASPxHyperLink ID="lnkEdit" runat="server" Text="Edit" NavigateUrl="../Category/Elements/<%# Eval("Id").ToString() %>/Edit"/>
            </DataItemTemplate>
        </dxwgv:GridViewDataColumn>
    </Columns>

但我得到错误:

分析程序错误消息:服务器标记格式不正确。

当我使用''而不是“”链接href属性是“../Category/Elements/<%# Eval(”Id“)。ToString()%&gt; /编辑”

1 个答案:

答案 0 :(得分:3)

我认为你不能将数据绑定元素放在属性值的中间。整个值必须在<% %>

之内
NavigateUrl='<%# "../Category/Elements/" +  Eval("Id").ToString() + "/Edit" %>'

我不确定您正在使用的UI库,但通常Eval()允许使用字符串格式参数。这比字符串连接方法更可取。你可以做到:

NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "Id", "../Category/Elements/{0}/Edit") %>'