我在页面中绑定一个DataList时,需要显示字段中的前50个字符。现在是全显示,不知道如何处理。
代码如下:
<ItemTemplate>
   <asp:Image id="Image1" runat="server" ImageUrl="images\index_29.gif"></asp:Image>
     <A href='<%#DataBinder.Eval(Container,"DataItem.News_ID","Admin/News_Read.aspx?     News_ID={0}")%>'><%# DataBinder.Eval(Container,"DataItem.News_Title")%></A>
</ItemTemplate>
小弟初学,望各位老大指教,拜谢····

解决方案 »

  1.   

    <%# (DataBinder.Eval(Container,"DataItem.News_Title")).ToString().PadRight(14).Substring(0,14)%>
    先将不足14的字符串补足为14位,然后再截取所有字符穿的前14位。
    我想再请教大家一个问题,不用DataList 、DataGrid等数据控件,直接用Table能绑定数据吗?
    绑定的语句该怎么写啊?谢谢大家了····
      

  2.   

    <ItemTemplate>
       <asp:Image id="Image1" runat="server" ImageUrl="images\index_29.gif"></asp:Image>
         <A href='<%#DataBinder.Eval(Container,"DataItem.News_ID","Admin/News_Read.aspx?     News_ID={0}")%>'><%# (DataBinder.Eval(Container,"DataItem.News_Title").ToString().Length()>50)?DataBinder.Eval(Container,"DataItem.News_Title"):DataBinder.Eval(Container,"DataItem.News_Title").ToString().Substring(0,50)%></A>
    </ItemTemplate>或者在后台写个判断字符串长的
      

  3.   

    如果绑定Table
    DataBinder.Eval(Container,"DataItem.News_Title")句话,要改成什么啊?
    Container好象不行吧。
    而且我用 DataGrid的时候,还要设置DataGrid的DataSource啊。Table好象没有DataSource吧?
      

  4.   

    在使用 Table Web 服务器控件显示数据的常见方案中,表中每一行代表数据源中的一个数据行,表中的每个单元格显示一行中的单个字段。与列表控件(Repeater、DataList 等)不同,Table 控件没有自动循环访问数据源中的行的机制。因此,您必须自己完成这一操作。
      

  5.   

    dataGrid没有dataSource控件类型          用途                  功能 
    Table      通用用途的可编程的表。  可显示 HTML 文本和控件的任何组合。 
                                       支持可设置为显示信息的 TableCell 控件。不使用模板进行显示。 
                                       并非先天就绑定了数据。 
                                       公开用于动态创建行(TableRow 控件)和单元格(TableCell 控件)的模型。  
      

  6.   

    还是不明白。Table到底这样绑定数据。我才学了不到一个月,对于这么高深的东西,研究不透。望大家明析···谢谢