for (int i = 0; i < ds.Tables[0].Rows.Count; i++) {
if (ds.Tables[0].Rows[i]["tile"].ToString().Length > 10)
{
ds.Tables[0].Rows[i]["tile"] = ds.Tables[0].Rows[i]["tile"].ToString().Substring(0, 10) + "...";
}
}
this.DataList3.DataSource = ds;
this.DataList3.DataBind();<a href="zsjs.aspx?id=<%#Eval("id") %>" style="text-decoration: none; color:#000000">  <%#Eval("tile") %></div> </a>
if (ds.Tables[0].Rows[i]["tile"].ToString().Length > 10)
{
ds.Tables[0].Rows[i]["tile"] = ds.Tables[0].Rows[i]["tile"].ToString().Substring(0, 10) + "...";
}
}
this.DataList3.DataSource = ds;
this.DataList3.DataBind();<a href="zsjs.aspx?id=<%#Eval("id") %>" style="text-decoration: none; color:#000000">  <%#Eval("tile") %></div> </a>
不過你看這樣行不行,你在模板列里再放一個隱藏的label,用隱藏的lable來讀取uAdviseID,然后用lable來判斷再送給hyperlink.
DataBound事件里面写
HyperLink hl = (HyperLink)e.Row.FindControl("控件ID名");
if(hl!=null)
{
if(hl.Text.ToString().Length >10)
{
hl.Text = hl.Text.SubString(0,10)+"...";
}
}
<asp:GridView ID="gvUserList" runat="server" AutoGenerateColumns="False" OnPageIndexChanging="gvUserList_PageIndexChanging">
<Columns>
<asp:BoundField DataField="UserId" HeaderText="编号" />
<asp:HyperLinkField DataNavigateUrlFields="UserId" DetailsViewDemo.aspx?UserId={0}"
DataTextField="RealName" HeaderText="查看" />
<asp:BoundField DataField="UserName" HeaderText="用户名" />
<asp:BoundField DataField="RealName" HeaderText="真实姓名" />
<asp:BoundField DataField="Age" HeaderText="年龄" />
<asp:CheckBoxField DataField="Sex" HeaderText="男" />
<asp:BoundField DataField="Mobile" HeaderText="手机" />
<asp:TemplateField HeaderText="电子邮件">
<AlternatingItemTemplate>
<a href='emailto:<%#Eval("Email") %>'>发电子给<%#Eval("RealName") %></a>
</AlternatingItemTemplate>
<ItemTemplate>
<%#Eval("Email") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="电子邮件">
<ItemTemplate>
<a href=provientManagerShow.aspx?uAdviseID=<%#Eval("uAdviseID") %>'><%#Eval("uAdviseCon").TOString().SubString(0,10) %></a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
{
//控制字符显示长度,若大于18个字符,显示前18个,后加"..."
for (int i = 0; i <e.Row.Cells.Count; i++)
{
if (e.Row.Cells[i].Text.Length > 18)
{
e.Row.Cells[i].Text = e.Row.Cells[i].Text.Substring(0, 18) + "...";
}
} }
DataBound事件里面写
HyperLink hl = (HyperLink)e.Row.FindControl("控件ID名");
if(hl!=null)
{
if(hl.Text.ToString().Length >10)
{
hl.Text = hl.Text.SubString(0,10)+"...";
}
}
同意该观点