我是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
中。那可能吗?
答案 0 :(得分: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>
答案 1 :(得分:0)
没有中继器的代码隐藏怎么办?我假设你的标记可以迭代,所以你可以做这样的事情(使用LINQ):
MyTextBox.Text = String.Join(",", MarkersCollection.Select(x => String.Format("[{0}, {1}, {2}]", x.Lat, x.Long, x.City)).ToArray());