在 ASP.NET 4.0中使用 C#,创建多选下拉菜单的最简单方法

分享于 

4分钟阅读

Web开发

  繁體

Multiselect_Dropdownlist/multi2.PNG

介绍

在本文中,我将向你展示如何在 ASP.NET 中创建多选择控件。 我将保持这篇文章简短甜蜜,这样你就可以使用你的应用程序中的代码。 以前我引用多个多选项的代码,但我发现它们都是一些复杂的实现。 所以我决定用我自己的方法。 让我们看看我是如何实现这个的。

背景

首先,你必须在 Visual Studio 中安装AJAX控件。 我使用 sdl。这是因为我使用的是to控件扩展程序来实现这里控件。

使用代码

将文本框放在设计视图中并为该文本框指定弹出窗口扩展程序。 这里需要注意的一点是,你必须将textbox控件放在 UpdatePanel

然后,创建一个面板,在这个面板中,你将。 然后将这里面板分配给弹出式扩展程序的PopupControlID 属性。

现在来看下面的代码:

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="multidropdown.aspx.cs"Inherits="_Default"%><%@RegisterAssembly="AjaxControlToolkit"Namespace="AjaxControlToolkit"TagPrefix="asp"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><headrunat="server"><title></title></head><body><formid="form1"runat="server"><div><asp:ToolkitScriptManagerrunat="server"></asp:ToolkitScriptManager><asp:UpdatePanelID="updatepanel1"runat="server"><ContentTemplate><asp:TextBoxID="TextBox1"runat="server"></asp:TextBox><asp:PopupControlExtenderID="TextBox1_PopupControlExtender"runat="server"Enabled="True"ExtenderControlID=""TargetControlID="TextBox1"PopupControlID="Panel1"OffsetY="22"></asp:PopupControlExtender><asp:PanelID="Panel1"runat="server"Height="116px"Width="145px"BorderStyle="Solid"BorderWidth="2px"Direction="LeftToRight"ScrollBars="Auto"BackColor="#CCCCCC"Style="display: none"><asp:CheckBoxListID="CheckBoxList1"runat="server"DataSourceID="SqlDataSource1"DataTextField="holiday_name"DataValueField="holiday_name"AutoPostBack="True"OnSelectedIndexChanged="CheckBoxList1_SelectedIndexChanged"></asp:CheckBoxList><asp:SqlDataSourceID="SqlDataSource1"runat="server"ConnectionString="<%$ 
 ConnectionStrings:employeedbConnectionString %>"SelectCommand="SELECT [holiday_name] FROM [tblholidaymas]"> 
 </asp:SqlDataSource></asp:Panel></ContentTemplate></asp:UpdatePanel></div></form></body></html>

在这里,你从 SQL Server 数据库中选择数据源。

Multiselect_Dropdownlist/multi1.PNG

最后,我们需要在后面的代码中再做一个修改。 每次单击checkboxlist时,所选值将被添加到textbox控件中。 因此,在选定的索引更改事件中,你将放置以下代码:

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;publicpartialclass _Default : System.Web.UI.Page
{
 protectedvoid Page_Load(object sender, EventArgs e)
 {
 }
 protectedvoid CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e)
 {
 string name = "";
 for (int i = 0; i < CheckBoxList1.Items.Count; i++)
 {
 if (CheckBoxList1.Items[i].Selected)
 {
 name += CheckBoxList1.Items[i].Text + ",";
 }
 }
 TextBox1.Text = name;
 }
}

那就是。


asp  asp-net