62,046
社区成员
发帖
与我相关
我的任务
分享
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public int i;
protected string GetUrl(int n)
{
i = n;
if (i % 2 == 0)
return "http://t2.gstatic.com/images?q=tbn:ANd9GcSTwunS5WG8coDuWrl4uXkqRpnwYjPzsa5TDzWVBIfCRYYmYV_mgpmpn34";
else
return "http://t2.gstatic.com/images?q=tbn:ANd9GcSvv7bpkq4RbhnU-HsrwWNLpgUT5T-zGT_80WhJnIEfz8LsC4mnN9Fc7s8";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<table border="1">
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1">
<HeaderTemplate>
<tr>
<th>field_1
</th>
<th>field_2
</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Image runat="server" ImageUrl='<%# GetUrl((int)Eval("i")) %>' />
<br />
<asp:Label ID="Label1" runat="server" Text='<%# Eval("i") %>' />
</td>
<td>
<img src='<%= GetUrl(i) %>' alt="" /><br />
<%= i %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
<tr>
<td colspan="2">比较一下吧!
</td>
</tr>
</FooterTemplate>
</asp:Repeater>
</table>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" TypeName="TestRepeater" SelectMethod="Select"></asp:ObjectDataSource>
</body>
</html>
除这个反射(已经删除)以外,这个demo还有什么不是最基本的?实在就是可以“直接抄袭用”的了。using System;
using System.Collections;
using System.Linq;
public class TestRepeater
{
public IEnumerable Select()
{
var rnd = new Random();
return from n in Enumerable.Range(0, 10)
select new { i = rnd.Next() };
}
}
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public int i;
protected string GetUrl(int i)
{
if (i % 2 == 0)
return "http://t2.gstatic.com/images?q=tbn:ANd9GcSTwunS5WG8coDuWrl4uXkqRpnwYjPzsa5TDzWVBIfCRYYmYV_mgpmpn34";
else
return "http://t2.gstatic.com/images?q=tbn:ANd9GcSvv7bpkq4RbhnU-HsrwWNLpgUT5T-zGT_80WhJnIEfz8LsC4mnN9Fc7s8";
}
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var x = e.Item.DataItem;
var t = x.GetType();
var p = t.GetProperty("i");
i = (int)p.GetValue(x, null);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<table border="1">
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1" OnItemDataBound="Repeater1_ItemDataBound">
<HeaderTemplate>
<tr>
<th>field_1
</th>
<th>field_2
</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Image runat="server" ImageUrl='<%# GetUrl((int)Eval("i")) %>' />
<br />
<asp:Label ID="Label1" runat="server" Text='<%# Eval("i") %>' />
</td>
<td>
<img src='<%= GetUrl(i) %>' alt="" /><br />
<%= i %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
<tr>
<td colspan="2">比较一下吧!
</td>
</tr>
</FooterTemplate>
</asp:Repeater>
</table>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" TypeName="TestRepeater" SelectMethod="Select"></asp:ObjectDataSource>
</body>
</html>