2011-04-08 105 views
0

我在ASP.NET中使用ListView控件从我的数据库检索数据。我研究了我的ListView控件的Web表单代码,并发现它基本上使标签显示从数据库中检索到的数据。我想知道如何操作标签。我可以很容易地更改标签的字体颜色,但是如果不使用C#代码,它的长度超过10就不能使标签截断并显示“(..more)”。 (我找不到.cs页面中的标签。)无论如何,我可以操纵由ListView控件生成的标签automaticaly的C#代码吗? Pease让我知道。提前致谢!在ASP.NET中自定义ListView控件

下面是C#

<asp:ListView ID="Posts" runat="server" DataSourceID="SqlDataSource1"> 
     <ItemTemplate> 
      <span> 
      <asp:Label ID="subjectLabel" runat="server" Font-Bold="True" Font-Size="Large" Text='<%# Eval("subject") %>' /> 
      <br /> 
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      <asp:Label ID="contentsLabel" runat="server" Font-Size="Small" ForeColor="#666699" Text='<%# Eval("contents") %>' /> 
      <br /> 
      <br /></span> 
     </ItemTemplate> 

回答

1

我的ListView控件如果你真的想避免在代码中做它,你总是可以做到这一点在提供数据的SQL:

SELECT CASE WHEN Len(contents) > 10 THEN Left(contents, 10) + '...' ELSE contents END FROM YourTable WHERE whatever

但是,如果您不想使用代码隐藏功能,则可以在数据绑定​​中使用三元运算符执行此操作。

在ü需要结合与u的取像数据表列表视图页面控制背后的代码
0

Posts.Datasource = DT; Posts.Databind();

其中dt是你使用sql查询获取的数据表。一旦你更详细地写出问题,给出更多解释