直接对要绑定的数据进行处理,修改那一列的值,就可以了
这是最行之有效的办法了,呵呵或者也可以在ItemBound事件中逐个处理

解决方案 »

  1.   

    这个可以的。在HTML中选择性绑定
    用IIF函数
    我机器上没有MSDN。你自己去看看吧。IIF 字符串长度>100(帮定表达式1)THEN (帮定表达式2)
      

  2.   

    you use c# or vb.net?
    this is a c# sample code ://in the html page;
    Text='<%#SetType(DataBinder.Eval(Container.DataItem, "articleid").ToString())%>'//in the .cs page:protected string GetText(string str)
    {
       if(str.Length>20)
       {
         string temp = str.Substring(0,20);
         str = temp +"...";
       }
      return str; 
    }Hope this will help to you.
      

  3.   

    在編輯模板上
    <asp:Label id=Label2 runat="server" 
    Text='<%# left(HttpUtility.HtmlEncode(DataBinder.Eval(Container, "DataItem.CertificateName").tostring),8) + "..." %>'
    ToolTip='<%# HttpUtility.HtmlEncode(DataBinder.Eval(Container, "DataItem.CertificateName").tostring)%>'>
    顯示8個長度加...tooltip顯示完整的字串
    不知你是否要的是這樣的?
      

  4.   

    也可以通过Sql语句实现
    case  when len([Field]) >10 then substring([Field],1,10)+'...' else [Field] end
      

  5.   

    楼上们的是不最好的方法,显示中文和英文就会长度不一样的。
    告诉你一个方法。DIV.titleholder {
    FONT-SIZE: 8pt; OVERFLOW: hidden; WIDTH: 90%; CURSOR: default; PADDING-TOP: 5px; FONT-FAMILY: ms sans serif, arial; WHITE-SPACE: nowrap; TEXT-OVERFLOW: ellipsis
    }应用以上样式,注意宽度不能用百分比。
    还会自动在结构加上"..."
      

  6.   


     回复人: mywebcn(帅得惊动了党,帅到掉渣) 
    你能顺便解释一下吗 我是新手啊
      

  7.   

    那你怎么跑这里来问啊昏倒。IIF那就不行了我吧代码拿过来了。是个例子,你看看吧。。当不同条件的时候。label显示不同的年龄
    <asp:Label id=Label30 runat="server" CssClass="LABELTEXTNO" Width="110px" Text='<%# IIF(CType(DataBinder.Eval(Container, "DataItem.Obj_AGE"),Int16) < 1900 OR CType(DataBinder.Eval(Container, "DataItem.Obj_AGE"),Int16) > 2000, "不详", DataBinder.Eval(Container, "DataItem.Obj_AGE")) %>'>
      

  8.   

    我应该在这里问啊
    我是asp.net中的用vb语言编的啊
      

  9.   

    那就对了啊。
    你在aspx页面文件中用IIF文件就能实现你要的功能
    IIF (Len(CType(DataBinder.Eval(Container, "DataItem.LogTextHide"),String))<45,DataBinder.Eval(Container, "DataItem.LogTextHide"),LSet(DataBinder.Eval(Container, "DataItem.LogTextHide"),40) & "......" )这是我的代码,当日志长度大于45时,显示为前40位+......
      

  10.   

    SQL中页能实现。看你怎么用了,我都用过了 
    To: mywebcn(帅得惊动了党,帅到掉渣)
    我去试试你的办法。如果再加你的功能,就完美了。
      

  11.   

    IIf 函数请参见
    Choose 函数 | If...Then...Else 语句 | Select...Case 语句 | Switch 函数要求
    命名空间:Microsoft.VisualBasic
    模块:Interaction 
    程序集:Microsoft Visual Basic .NET 运行库(位于 Microsoft.VisualBasic.dll 中)根据表达式的计算,返回两个对象中的一个。
    Public Function IIf( _
       ByVal Expression As Boolean, _ 
       ByVal TruePart As Object, _ 
       ByVal FalsePart As Object _ 
    ) As Object
    参数
    Expression 
    必选项。Boolean。要计算的表达式。 
    TruePart 
    必选项。Object。如果 Expression 计算为 True,则被返回。 
    FalsePart 
    必选项。Object。如果 Expression 计算为 False,则被返回。 
    备注
    注意   参数列表中的表达式可以包括函数调用。作为为调用 Iif 准备参数列表的一部分,Visual Basic 编译器调用每个表达式中的每个函数。这意味着如果 Expression 选择了其他参数,则不能依赖于不被调用的特定函数。
    示例
    本示例使用 IIf 函数来计算 CheckIt 过程的 TestMe 参数,并且如果参数值大于 1000 则返回字“Large”;否则返回字“Small”。
    Function CheckIt (ByVal TestMe As Integer) As String
       CheckIt = IIf(TestMe > 1000, "Large", "Small")
    End Function
      

  12.   

    問一下,可以寫在datagrid中嗎?怎么我試了不行了呢
      

  13.   

    写在datagrid 中?
    你说 label吗 ?
    可以的 你在 属性-帮定
    里面的 
    text项中写