白送分的问题
我是新手,我想用repeater 显示数据库里面的数据,但是结果是不报错,也不显示
aspx代码:
<%@ Page Language= "C# " AutoEventWireup= "true " CodeFile= "user.aspx.cs " Inherits= "xuexi_user " %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN " "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns= "http://www.w3.org/1999/xhtml " >
<head runat= "server ">
<title> 无标题页 </title>
</head>
<body>
<form id= "form1 " runat= "server ">
<div>
<asp:Repeater ID= "Repeater1 " runat= "server ">
</asp:Repeater>
</div>
</form>
</body>
</html>
cs代码:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class xuexi_user : System.Web.UI.Page
{
string Con_str;
protected void Page_Load(object sender, EventArgs e)
{
Con_str = ConfigurationSettings.AppSettings[ "SQL_dsn "];
SqlConnection Scon = new SqlConnection(Con_str);
SqlDataAdapter Sds = new SqlDataAdapter( "select * from authors ",Scon);
DataSet Ds = new DataSet();
Sds.Fill(Ds, "authors ");
Repeater1.DataSource = Ds.Tables[ "authors "];
Repeater1.DataBind();
Scon.Close();
Scon.Dispose();
}
}
[解决办法]
Repeater控件本来就没有界面,你要自己写嘛
<asp:Repeater ....>
<HeaderTemplate>
//这里写头
</HeaderTemplate>
<ItemTemplate>
//这里写循环
</ItemTemplate>
<FooterTemplate>
//这里写尾
</FooterTemplate>
</asp:Repeater>
[解决办法]
后台代码是对的,但前面HTML要改的.请仿照我的样子改:
<asp:Repeater ID= "rpt " Runat= "server ">
<HeaderTemplate>
<table cellspacing= "1 " cellpadding= "2 " width= "80% " align= "left " bgcolor= "#f1f1f1 " class= "border2_0011 ">
<tr bgcolor= "#cccccc ">
<td width= "60% " height= "24px "> 标题 </td>
<td width= "24% " align= "center "> 提交日期 </td>
<%if( t.canPass( "News|Edit ") ){%>
<td width= "8% " align= "center "> </td>
<%}%>
<%if( t.canPass( "News|Delete ") ){%>
<td width= "8% " align= "center "> </td>
<%}%>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr onmouseover= "javascript:setCss(this) " onmouseout= "javascript:setCss(this) ">
<td height= "22px " bgcolor= "#ffffff ">
<span style= "width:260px;height:15px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap ">
<%#(((DataRowView)Container.DataItem)[ "Title "])%>
</span>
</td>
<td align= "center " bgcolor= "#ffffff ">
<%#DataBinder.Eval(Container.DataItem, "CreatedTime ", "{0:yyyy-MM-dd} ")%>
</td>
<%if( t.canPass( "News|Edit ") ){%>
<td align= "center " bgcolor= "#ffffff ">
<a href= 'javascript:edit( <%#((DataRowView)Container.DataItem)[ "Id "]%> ) '> 修改 </a>
</td>
<%}%>
<%if( t.canPass( "News|Delete ") ){%>
<td align= "center " bgcolor= "#ffffff ">
<asp:LinkButton CommandName= "Del " CommandArgument = ' <%#((DataRowView)Container.DataItem)[ "Id "]%> '
Runat= "server " ID= "lbtnDel "> 删除 </asp:LinkButton>
</td>
<%}%>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate> </asp:Repeater>
[解决办法]
sh_city(高) ( ) 信誉:100 Blog
-----------
正解
[解决办法]
<asp:repeater id= "RptWhtb " runat= "server ">
<ItemTemplate>
<tr>
<td height= "18 " valign= "middle "> · <a onFocus= "aaa() " target=_blank href= ' <%# (DataBinder.Eval(Container.DataItem, "Url ").ToString()== " ")? "../Pages/News/ "+DataBinder.Eval(Container.DataItem, "Utter_Date_1 ").ToString()+ "/ "+DataBinder.Eval(Container.DataItem, "Id ").ToString()+ ".Htm ":DataBinder.Eval(Container.DataItem, "Url ").ToString()%> ' title= ' <%# DataBinder.Eval(Container.DataItem, "Long_Title ")%> '> <%# DataBinder.Eval(Container.DataItem, "Title ")%> </a> <a target=_blank href= ' <%# (DataBinder.Eval(Container.DataItem, "Url ").ToString()== " ")? "../Pages/News/ "+DataBinder.Eval(Container.DataItem, "Utter_Date_1 ").ToString()+ "/ "+DataBinder.Eval(Container.DataItem, "Id ").ToString()+ ".Htm ":DataBinder.Eval(Container.DataItem, "Url ").ToString()%> ' title= ' <%# DataBinder.Eval(Container.DataItem, "Long_Title ")%> '> <%# Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "New ")) ? " <img src= 'images/new.gif ' border= '0 '> " : " "%> </a> </td>
</tr>
</ItemTemplate>
</asp:repeater>
[解决办法]
<%# DataBinder.Eval(Container.DataItem, "Title ")%>
这个是标题,但是是限制了显示字数的
当鼠标放到标题上就会出现完整的标题,也就是
<%# DataBinder.Eval(Container.DataItem, "Long_Title ")%>