本人有段代码 不知道为什么达不到效果! 望各位高手指点!!!
Sub PtList()
Conn.Open()
Ad = New SqlDataAdapter("SQL语句",Conn)
Ds = New Dataset()
Ad.Fill(Ds,"表")
Dim Dt As DataTable = Ds.Tables("表")
Dim i As Integer = 0
Dim strvale As string
While i < Dt.Rows.Count
IF Dt.Rows(i)("新闻标题").ToString.Length > 4 Then
strvale = Dt.Rows(i)("新闻标题").ToString.Substring(0, 4)
Else
strvale = Dt.Rows(i)("新闻标题").ToString
End If
System.Math.Min(System.Threading.Interlocked.Increment(i),i-1)
End While
Pt.DataSource = strvale
Pt.DataBind()
Conn.Close()
End Sub 注:Conn Ad Ds 都已声明!!!
在页面上需要显示 新闻类别 新闻标题 发布日期 望各位高手 把此段代码优化 并给出C#代码 寒心万分感谢
100分落谁家???
Sub PtList()
Conn.Open()
Ad = New SqlDataAdapter("SQL语句",Conn)
Ds = New Dataset()
Ad.Fill(Ds,"表")
Dim Dt As DataTable = Ds.Tables("表")
Dim i As Integer = 0
Dim strvale As string
While i < Dt.Rows.Count
IF Dt.Rows(i)("新闻标题").ToString.Length > 4 Then
strvale = Dt.Rows(i)("新闻标题").ToString.Substring(0, 4)
Else
strvale = Dt.Rows(i)("新闻标题").ToString
End If
System.Math.Min(System.Threading.Interlocked.Increment(i),i-1)
End While
Pt.DataSource = strvale
Pt.DataBind()
Conn.Close()
End Sub 注:Conn Ad Ds 都已声明!!!
在页面上需要显示 新闻类别 新闻标题 发布日期 望各位高手 把此段代码优化 并给出C#代码 寒心万分感谢
100分落谁家???
解决方案 »
- FreeTextBox所有按钮显示
- 关于数组的内容赋给字符串(asp.net,C#)
- 前台和后台能不能共用三层架构呢?
- 为什么同一个带参数的地址得到的结果不一样?
- 2.0里textbox的Readonly属性为真时如何取值??
- "所有池连接都已被使用并已达到最大池大小"是什么问题?
- 请问谁有C#写的网页记数器下载网纸啊,最好是能运行的
- forms验证问题
- 在html源代码中编写c#语句??????????????
- 可用分过多,散一散~~~
- 如果B/S系统或一个网站,在某个局域网中的非主机,如何才能被非此局域网内的机器访问啊???????????????????????
- 求asp.net(C#)操作XML的完整例子
或者用asp兼容的len(Dt.Rows(i)("新闻标题"))这样都可以得到字符串的长
<%# DataBinder.Eval(Container.DataItem, "title").ToString().Substring(0,20)%>
不过你如果你的字符长度不够20会出错的。
你可以在.cs中写啊,判断一下长度再Substring就行了。
<%# Left(DataBinder.Eval(Container.DataItem, "title"),20)%>截取中文和英文长度的问题
http://www.cnblogs.com/renyu732/archive/2005/06/20/177833.html
只有一个字符串,while循环会把前面对 strvale 的赋值覆盖掉。最后DataBind的结果只可能是最后一条结果。
<%# myCutString(Convert.ToString(DataBinder.Eval(Container, "DataItem.ban_sno")),20) %>=========函数======================
/// <summary>
/// 截取以字节计算的文本长度
/// </summary>
/// <param name="msytr">要截取的文本串</param>
/// <param name="intLength">要截取的字节数</param>
/// <returns>返回截取的字节数</returns>
private string myCutString(string mystr,int intLength)
{
Byte[] myByte = System.Text.Encoding.Default.GetBytes(mystr);
string str = "";
if(myByte.Length < intLength)
{
str = mystr;
}
else
{
str = System.Text.Encoding.Default.GetString(myByte,0,intLength);
switch(System.Text.Encoding.Default.GetByteCount(mystr) - intLength)
{
case 1:
str += "..";
break;
case -1:
str += "...";
break;
default:
break;
}
}
return(str);
}用这个方法。。抛弃你的那个