2011-10-07 79 views
4

我在綁定到linqdatasource的頁面上有一個列表框。 在ondatabound事件中,我試圖使屏幕上的列表框大小適合項目,以避免滾動並避免過多的空白。設置ASP.NET(4.0)列表框的寬度和高度以適合項目

我該怎麼做?

protected void ListBox1_DataBound(object sender, EventArgs e) 
{ 
    ListBox1.FitToItems(); 
} 
protected void FitToItems() { 
    ...? 
} 
+2

ListBox中不應用任何CSS樣式適合自己的項目中最長的文本表示。所以暗示沒有水平的滑動條。 –

+1

好的,身高呢? – tomsv

+0

這將需要更多的CSS調整;) –

回答

9

嘗試:

Listbox.rows = Listbox.Items.count 
1

嘗試在生成的標籤上設置尺寸屬性。 類似...

$(document).ready(function() { 
    $('#<%=this.ListBox1.ClientID%>').attr('size', $('#<%=this.ListBox1.ClientID%> option').length); 
}); 

使用jQuery。

或者使用ListBox.Rows = ListBox.Items.Count服務器端進行設置(我自己沒有嘗試過,但我認爲它就是這樣)。

+0

使用代碼標籤,使您的帖子可讀。 – JonH