肯定不是datagrid,看HTML也不是ASP.NET做的啊!
页面布局的学问。
页面布局的学问。
解决方案 »
- 关于发布网站的问题
- ASP.NET如何生成带图片的WORD文档?
- 未能加载程序集
- File.Delete(path),提示另外一个进程对文件读写的操作,怎么杀死进程
- |zyciis| 经常看到的网上支付的HTML源码都是用FORM的ACTION来做的 那这个东西 在ASP.NET中要怎么来实现呢 谢谢
- (在线~~~)如何实现右键获取网页URL?
- 关于多个Repeat控件与数据源绑定问题 【100分】
- asp.net调用dll的问题!!(见者有分!在线急等!!)
- 如何改asp.net文件夹只读属性?
- 浏览器预览PDF文件,IE9没问题,IE8,IE11都不行,什么原因?
- 想在静态页面中记录点击次数
- 关于查询的问题!!
我个人的观点是datagrid并不是一个完善的控件(目前来讲)
但是我的页面访问速度有的人快,有的慢:(,我也不懂怎么回事
一般的做法是在后台生成静态的首页文件(不过在.NET里扩展名为ASPX),即:index.aspx
虽然是ASPX后缀,但是里面其实是静态的HTML代码
给你一段例子吧FileStream fs=new FileStream(Server.MapPath(文件名),FileMode.Create);
StreamWriter f=new StreamWriter(fs, System.Text.Encoding.UTF8);//如果是gb2312,则第2个参数应改为:System.Text.Encoding.GetEncoding("gb2312")
f.Write(mdata);//mdata为文本数据
f.Close();
fs.Close();其实大家学.NET的时候不要被它华丽的外表和宣传吓住,以前ASP中的很多好的方法还是可以移植过来的
首页用了datagrid吗?还是就用datalist?感觉这两个东东差很多啊
少量用了Datagrid它们的主要区别是:Datagird是以表格为定位,就是输出时最外面为一个表格,包含行和列
Datalist是一行一列的一个表格。Datalist比Datagrid有更多的灵活性但datagrid支持分页不过,现在有通过的分页组件,可以观察一下,我网站里有一些分页控件
如http://www.erist.com/Articles/ChannelIndex.aspx?ChannelID=2的最新文章列表的分页。
首页可以是用include包含各块的静态页面,当有相应的改变时,再生成一次相应的inc文件,这样可以保证较快速度,而不用频繁读取数据库和动态解析页面。
现在有asp.net,更应有一些新的想法
----------
比如说?
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Erist.DataAccess.Article; /// <summary>
/// ChannelNewArticlesList 的摘要说明。
/// </summary>
public class ChannelNewArticlesList :Erist.Web.UI.UserControls.ControlBase
{
protected System.Web.UI.WebControls.DataList DataList1;
private int ChannelIndex; private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
ChannelDAL obj=new ChannelDAL();
DataSet ds2;
ds2=obj.GetChildChannelsForArticle(base.CurrentChannelID);
// 在此处放置用户代码以初始化页
this.DataList1.DataSource=ds2;
this.DataList1.DataKeyField="ChannelPath";
this.DataList1.DataBind();
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器
/// 修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataList1.ItemCreated += new System.Web.UI.WebControls.DataListItemEventHandler(this.DataList1_ItemCreated);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void DataList1_ItemCreated(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
this.ChannelIndex=e.Item.ItemIndex;
}
} public DataSet FillDs()
{
DataSet ds;
ArticleDAL obj=new ArticleDAL();
ds= obj.GetArticlesByChannelNewN((string)this.DataList1.DataKeys[ChannelIndex]);
return ds;
} /// <summary>
/// 格式化文章的标题,使之不致于显示过长的信息
/// </summary>
/// <param name="Title"></param>
/// <returns></returns>
public string FormatTitle(string Title)
{
if(Title.Length>16)
{
return Title.Substring(0,16)+"...";
}
else
{
return Title;
}
} /// <summary>
/// 格式化日期显示的颜色,当天为红色
/// </summary>
/// <param name="ModifyDate"></param>
/// <returns></returns>
public System.Drawing.Color GetTitleForColor(string ModifyDate)
{
if(DateTime.Parse(ModifyDate).Date.Equals(DateTime.Now.Date))
{
return Color.Red;
}
else if((DateTime.Parse(ModifyDate).AddDays(1).Date.Equals(DateTime.Now.Date)))
{
return Color.Orange;
}
else
{
return Color.Black;
}
} }
}