首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

给gridview某字段加链接?解决思路

2012-02-01 
给gridview某字段加链接?如题,还有我用gridview显示一个新闻列表,如何在每个新闻开头加个字符[解决办法]

给gridview某字段加链接?
如题,还有我用gridview显示一个新闻列表,如何在每个新闻开头加个字符"·"

[解决办法]
<asp:HyperLinkField HeaderText="" Text="" DataNavigateUrlFields="id" DataNavigateUrlFormatString="EditNews.aspx?id={0}" Target="main" />
这样写试试
[解决办法]
开头加“。”可以用模板列

超过10个字符可以用 substring截取
[解决办法]
怎么会在开头加?
不是都是结尾加......????
select case when len(columnname) >10 then eft(columnname,10)+ "... " else columnname end as columnname
from tablename
在数据库处理!超过10就显示字段+......没超过就显示字段
[解决办法]
1〉还有新闻开头加个 "·" 
------------------------------------------------
用一个模板列显示。里面可以放网站上常见的小三角型,什么的~~
2〉新闻长度如果超过10个字符自动截取如何弄
---------------------------------------------------

C# code
 public void Bind()    {        string conn = "provider=microsoft.jet.oledb.4.0;data source=" + Server.MapPath("./data/english.mdb");        string cmd = "select id,title,type,dt from News";        OleDbConnection myconnection=new OleDbConnection (conn);        OleDbDataAdapter da = new OleDbDataAdapter(cmd, conn);        myconnection .Open ();        DataSet ds = new DataSet();        da.Fill(ds, "News");        GridView1.DataSource = ds;        //设置主键;        GridView1.DataKeyNames = new string[] { "id" };        GridView1.DataBind();        //用“...”代替超长字符串,解决方法:数据绑定后过滤每一行即可         for (int i = 0; i <= GridView1.Rows.Count - 1; i++)        {            DataRowView mydrv;            string gIntro;            if (GridView1.PageIndex == 0)            {                mydrv = ds.Tables["News"].DefaultView[i];//处理的表                gIntro = Convert.ToString(mydrv["title"]);//所要处理的字段                GridView1.Rows[i].Cells[1].Text = SubStr(gIntro, 5);            }            else            {                mydrv = ds.Tables["News"].DefaultView[i + (2 * GridView1.PageIndex)];//每页记录条数2;                gIntro = Convert.ToString(mydrv["title"]);                GridView1.Rows[i].Cells[1].Text = SubStr(gIntro, 5);            }        }        myconnection .Close ();    }    //调用的方法:    public string SubStr(string sString, int nLeng)    {        if (sString.Length <= nLeng)        {            return sString;        }        string sNewStr = sString.Substring(0, nLeng);        sNewStr = sNewStr + "...";        return sNewStr;    }
[解决办法]
如何分页……偶也想问
[解决办法]
再帮楼主问一个:
新闻列中如
asdfsadfffffff....
如何使当鼠标置于新闻列上方,显示类似于tooltip的内容为新闻标题全称.此功能如何实现?
[解决办法]
楼上的代码多了点!!!
一般情况下在dataview控件RowDataBound事件中写这么一段代码应该可以解决问题了
 string[] StrCol = new string[3];
if ((e.Item.ItemType == ListItemType.Item) | (e.Item.ItemType == ListItemType.AlternatingItem))
{

string Title = "";
Title = e.Item.Cells[1].Text;
if (Title.Length > 10)//大于10个长度
{
e.Item.Cells[1].Text = "<a href=\"news_show.aspx?id=" + this.DGBulletin.DataKeys[e.Item.ItemIndex] + ">" + Title.Substring(1, 10) + "...</a>";
}
else
e.Item.Cells[1].Text = "<a href=\"news_show.aspx?id=" + this.DGBulletin.DataKeys[e.Item.ItemIndex] + ">" + Title + "...</a>";



}

热点排行