1。首先我用datatable作为了数据源绑定Repeater
<asp:Repeater ID="Repeater1" runat="server"
onitemdatabound="Repeater1_ItemDataBound">
<HeaderTemplate>
<table width="80%" height="80%">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Label ID="lblText" runat="server" Text=" "></asp:Label>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater> private void Bind()
{
if (!string.IsNullOrEmpty(txtSearch.Text))
{
var newTest = dt.AsEnumerable().Select(p => p.Field<string>("Directions").Contains(txtSearch.Text));
Repeater1.DataSource = newTest;
Repeater1.DataBind();
}
}在事件中我想让DataTable中的值遍历到Lable中,请看protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataRowView rowItem = e.Item.DataItem as DataRowView;
if (rowItem != null)
{
Label lblTest = e.Item.FindControl("lblText") as Label;
lblTest.Text = Convert.ToString(rowItem["列名"]);
}
}
}lblTest.Text书中为空值,调试的时候DataTable 是有4列的, 我让在ItemDataBound中取出数据.
<asp:Repeater ID="Repeater1" runat="server"
onitemdatabound="Repeater1_ItemDataBound">
<HeaderTemplate>
<table width="80%" height="80%">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Label ID="lblText" runat="server" Text=" "></asp:Label>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater> private void Bind()
{
if (!string.IsNullOrEmpty(txtSearch.Text))
{
var newTest = dt.AsEnumerable().Select(p => p.Field<string>("Directions").Contains(txtSearch.Text));
Repeater1.DataSource = newTest;
Repeater1.DataBind();
}
}在事件中我想让DataTable中的值遍历到Lable中,请看protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataRowView rowItem = e.Item.DataItem as DataRowView;
if (rowItem != null)
{
Label lblTest = e.Item.FindControl("lblText") as Label;
lblTest.Text = Convert.ToString(rowItem["列名"]);
}
}
}lblTest.Text书中为空值,调试的时候DataTable 是有4列的, 我让在ItemDataBound中取出数据.
<asp:Label ID="lblText" runat="server" Text='<%# Eval("列名") %>'></asp:Label>
public DataTable dt;
protected void Page_Load(object sender, EventArgs e)
{
Show();
if (!IsPostBack)
{
Bind();
}
}
public void Show()
{
dt = new DataTable();
DataColumn cdId = new DataColumn("ID");
dt.Columns.Add(cdId);
DataColumn cdName = new DataColumn("Name");
dt.Columns.Add(cdName);
DataColumn cdDirections = new DataColumn("Directions");
dt.Columns.Add(cdDirections);
DataColumn cdPiPei = new DataColumn("PiPei");
dt.Columns.Add(cdPiPei);
DataRow dr = dt.NewRow();
dr["ID"] = "1";
dr["Name"] = "小明";
dr["Directions"] = "贾君鹏你妈叫你回家吃饭了";
dr["PiPei"] = "XM";
dt.Rows.Add(dr);
DataRow dr1 = dt.NewRow();
dr1["ID"] = "2";
dr1["Name"] = "郭强";
dr1["Directions"] = "郭强你妈叫你回家吃饭了";
dr1["PiPei"] = "XM";
dt.Rows.Add(dr1);
DataRow dr2 = dt.NewRow();
dr2["ID"] = "3";
dr2["Name"] = "赵强";
dr2["Directions"] = "赵强你妈叫你回家吃饭了";
dr2["PiPei"] = "XM";
dt.Rows.Add(dr2);
DataRow dr3 = dt.NewRow();
dr3["ID"] = "4";
dr3["Name"] = "王宏";
dr3["Directions"] = "王宏你妈叫你回家吃饭了";
dr3["PiPei"] = "XM";
dt.Rows.Add(dr3);
}