0

我是 asp.net 的新手。
我在我的代码中使用了转发器,我想将转发器的结果用作单个文本框的文本。中继器代码如下:

<asp:Repeater ID="rptMarkers" runat="server">
                        <ItemTemplate>
                            [
                            <%# Eval("lat")%>,
                            <%# Eval("long") %>,
                            '<%# Eval("city")%>'
                            ]
                        </ItemTemplate>
                        <SeparatorTemplate>
                           ,
                        </SeparatorTemplate>
</asp:Repeater>

中继器的结果是这样的:

[ 38,1413580155577, 23,761239052, 'Athens' ] , [ 38,1199989318848, 23,742678165, 'Athens' ]

我希望将此行结果写入单个textbox.text. 那可能吗?

4

2 回答 2

0

在没有中继器的代码隐藏中做呢?我假设你的标记可以被迭代,所以你可以做这样的事情(使用 LINQ):

MyTextBox.Text = String.Join(",", MarkersCollection.Select(x => String.Format("[{0}, {1}, {2}]", x.Lat, x.Long, x.City)).ToArray());
于 2014-01-08T17:24:02.330 回答
0

你可以这样做

<asp:Repeater ID="rptMarkers" runat="server">
      <ItemTemplate>
           <asp:TextBox runat="server" Text='<%# "[" +Eval("lat")  + " , " + Eval("long")%>  + " , " + Eval("city") + "]"' ></asp:TextBox>
       </ItemTemplate>
       <SeparatorTemplate>
        ,
       </SeparatorTemplate>
</asp:Repeater>
于 2014-01-08T15:01:28.203 回答