【问题标题】:Bind multiple column values to checkboxlist将多个列值绑定到复选框列表
【发布时间】:2019-01-08 09:14:53
【问题描述】:
<asp:Panel ID="plOffice" runat="server" ScrollBars="Vertical" Width="200px" Height="80px" CssClass="TB">
    <asp:CheckBoxList ID="chkOffice" runat="server" AppendDataBoundItems="True" Height="80px" AutoPostBack="True" OnSelectedIndexChanged="chkOffice_SelectedIndexChanged">
        <asp:ListItem>All</asp:ListItem>
    </asp:CheckBoxList>
</asp:Panel>
Dim DsStatus As New DataSet
D.FillDataSet(DsStatus, "select * from Z_AppStatusMaster")
ChkStatus.DataSource = DsStatus
ChkStatus.DataTextField = "StatusDescription"
ChkStatus.DataValueField = "AppStatusID"
ChkStatus.DataBind()

注意:将多个列值绑定到复选框列表。我需要将更多列值绑定到复选框列表。 我已经在使用DataTextFieldDataValueField...

【问题讨论】:

  • 循环数据集中的项目并手动添加ListItems
  • 我想从我的数据库中绑定更多的列值。我以前用过 DataTextField,DataValueField。你知道其他可以存储另一个列值的属性吗?
  • ChkStatus.Items.Add(new ListItem() { Text = A + B, Value = A + B });

标签: asp.net sql-server vb.net


【解决方案1】:

您可以自定义 SQL 查询,以便它准确地提供您想要显示的内容:

D.FillDataSet(DsStatus, "select AppStatusID, StatusDescription + ' - ' + SomeOtherField as CustomDescription from Z_AppStatusMaster")
ChkStatus.DataSource = DsStatus
ChkStatus.DataTextField = "CustomDescription"
ChkStatus.DataValueField = "AppStatusID"

【讨论】:

    【解决方案2】:

    为此,您需要创建一个继承自 DropDownList 的类,然后覆盖 SaveViewState、LoadViewState 和 RenderContents 子例程。

    我不能发布我们的代码,因为它是专有的,但我们会这样做,然后通过添加属性为每个项目添加额外的值。举个例子:

       For Each dr In ds.Tables(1).Rows
            cbo.Items.Add(New System.Web.UI.WebControls.ListItem(dr("NAME"), dr("VALUE")))
    
            cbo.Items(cbo.Items.Count - 1).Attributes.Add("GROUP", dr("GROUP"))
    
        Next
    

    本文将带您了解大部分情况: http://www.techinfocorner.com/post/Adding-Attributes-and-Keeping-DropDownList-ListItems-Attributes-on-Post-back-in-ASPNET

    这个链接也应该有帮助:ListItems attributes in a DropDownList are lost on postback?

    【讨论】:

      猜你喜欢
      • 2012-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-03
      • 2017-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多