65.9K
CodeProject 正在变化。 阅读更多。
Home

终于在 ASP.NET 中实现了一个水平滚动条列表框!

starIconstarIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIcon

2.84/5 (18投票s)

2005年9月9日

1分钟阅读

viewsIcon

164746

downloadIcon

2763

在 ASP.NET 中实现一个水平滚动条列表框。

List Box with Horizontal Scroll Bar

引言

你有没有想象过在一个列表框中放置水平滚动条? 随着我们生活在一个高速互联网时代,每个人都希望他们的 Web 应用程序看起来与 Windows 应用程序完全相同,本文将解释我们如何使用 ASP.NET 轻松创建水平滚动条。

问题

请参阅下方的图像。 你有一个列表框,应该容纳长文本,并且宽度不适合列表框的宽度。

List Box with Horizontal Scroll Bar

你有没有想过更改一个小属性来更改样式以显示水平滚动条?

ASP.NET 中没有这样的功能。

简单的方法

我们可以将此列表框放在一个 DIV 内部,并设置 DIV 的样式为 overflow,这将自动在必要时显示滚动条。

你的 aspx 页面具有以下 DIV

<div id='hello' style="Z-INDEX: 102; LEFT: 13px; OVERFLOW: 
            auto; WIDTH: 247px; POSITION: absolute; TOP: 62px; HEIGHT: 134px" >

你需要注意的重要样式是

OVERFLOW: auto

style 元素内部。

现在你可以将你的 asp:listbox 放在 DIV 定义内部。 在你的代码后台类的 page_load 函数内部,你需要正确定义列表框的宽度和高度,以便它不会溢出 DIV

服务器端代码如下所示

private void Page_Load(object sender, System.EventArgs e)
{
    if (!IsPostBack)
    {
        //Load all items in the list box.
        int nItem = Convert.ToInt32(ListBox1.Items.Count * 17);
        ListBox1.Height = nItem; //Set height depends on the font size.
        ListBox1.Width = 800; //This will ensure the list item won't be shrinked!
    }
}

关注点

没有人喜欢这种实现方式。 但只要满足业务需求,每个人都会很高兴。

历史

  • 2005年8月22日 - 版本 1.0。
© . All rights reserved.