在列表框中显示选定的项目(System.Web.UI.WebControls)
问题描述:
我正在处理一个列表框,比方说有20个项目。列表框的大小允许用户查看前5个项目。但是,列表框有一个预选项,有时不可见,因为它不是前5项中的一项。在列表框中显示选定的项目(System.Web.UI.WebControls)
在为列表框设置选定的项目后,如何确保lisbox正确滚动以便所选项目对用户可见?
感谢您的帮助!
答
您是否尝试过设置TopIndex属性?
listBox.TopIndex = itemIndex;
对不起,我对你的问题的第一个理解是完全错误的。我认为你可以通过使用javascript来完成。我在Windows 7和IE8上测试了下面的示例,它工作正常。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
function setSelectedIndex() {
var listBox = $get('listBox');
var textBox = $get('textBox');
listBox.selectedIndex = textBox.value;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:ListBox runat="server" ID="listBox">
<asp:ListItem Text="A" Value="A" />
<asp:ListItem Text="B" Value="B" />
<asp:ListItem Text="C" Value="C" />
<asp:ListItem Text="D" Value="D" />
<asp:ListItem Text="E" Value="E" />
<asp:ListItem Text="F" Value="F" />
<asp:ListItem Text="G" Value="G" />
<asp:ListItem Text="H" Value="H" />
<asp:ListItem Text="I" Value="I" />
<asp:ListItem Text="K" Value="K" />
</asp:ListBox>
<asp:TextBox runat="server" ID="textBox" Text="8" />
<asp:Button runat="server" ID="button" Text="Select" OnClientClick="setSelectedIndex(); return false;" />
</div>
</form>
</body>
</html>
+0
感谢您的答案,但它不是System.Web.UI.WebControls.Listbox的成员。 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listbox_members的.aspx – mga911 2010-02-03 20:36:06
对不起,错误的信息。我在webui列表框中看不到任何有用的东西。 :( – 2010-02-03 20:51:49