ASPxGridView и метод Eval (string) - PullRequest
       5

ASPxGridView и метод Eval (string)

1 голос
/ 27 января 2012

Я пытаюсь добавить столбец в 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 ()%> / Edit"

1 Ответ

3 голосов
/ 27 января 2012

Не думаю, что вы можете поместить элементы привязки данных в середину значения атрибута.Все значение должно быть в пределах <% %>:

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

Я не уверен с используемой библиотекой пользовательского интерфейса, но обычно Eval() допускает параметр формата строки.Это было бы предпочтительнее подхода конкатенации строк.Вы могли бы сделать:

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