2011-04-08 172 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查詢獲取的數據表。一旦你更詳細地寫出問題,給出更多解釋