2012-01-27 60 views
1

我想列添加到ASPxGridView這將有鏈接到其他網頁:ASPxGridView和eval(string)方法

<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()%> /編輯」

+2

看起來像你有一個很好的回答了,但我認爲它可能也工作,如果你只是改變外報價單,我知道在某些情況下,這樣的作品,只是不知道關於這個。肯定雙引號內的雙引號幾乎不會起作用。 – eselk 2012-01-27 17:31:37

回答

3

我不不要以爲你可以把數據綁定元素放到屬性值的中間。整個價值需要是<% %>內:

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

我不知道與UI庫,你正在使用,但通常​​允許字符串格式參數。這比字符串連接方法更可取。你也許可以做到:

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

D'oh!就是這樣,+1 – jadarnel27 2012-01-27 17:20:09

+0

你是對的,工作! :-) //需要等5分鐘才能接受。 – TrN 2012-01-27 17:22:47

相關問題