【问题标题】:Hide Empty Rows in a DataGrid隐藏 DataGrid 中的空行
【发布时间】:2016-07-06 16:14:37
【问题描述】:

下午好。我能够将数据填充到 vb.net 中的 DataGrid 控件中。但是,当您从第一个下拉列表中选择不同的公司时,会有空行。那是因为每次选择的结果都是输出datagrid中的所有报表,但只显示适合公司的,不适合的就留空。但是,我被困在如何隐藏那些空行上。我查看了其他来源,但没有任何工作。如何隐藏空行?

这是我的后端:

        Protected Sub DropDownList1_SelectedIndexChanged(sender As Object, e As EventArgs)
    DropDownList2.Items.Clear()

    'DropDownList2.Enabled = False
    'DropDownList3.Enabled = False
    'TextBox1.Enabled = False

    If DropDownList1.SelectedIndex > 0 Then
        Dim sConstr As String = ConfigurationManager.ConnectionStrings("ds17701ConnectionString").ConnectionString
        Dim Conn As New SqlConnection(sConstr)
        Dim ds As New DataSet()
        Dim dt As New DataTable
        Dim valsql As String = ""
        Dim valsql1 As String = ""
        Dim ds_Reports As New DataSet()


        Dim parentitem As DataRow
        Dim childitem As DataRow

        'populates membership status once company selected
        valsql = "SELECT [CompanyID], [CompanyName], [MemberTypeID], [MembershipStatus], [GroupID]  FROM CompanyList WHERE COMPANYID = " & DropDownList1.SelectedValue


        valsql1 = "SELECT REPORTID, REPORTNAME, REPORTCODE FROM REPORTLIST WHERE ReportVisible = 1"
        valsql1 = valsql1 & ";SELECT c.ReportID, c.COMPANYID, rl.ReportName FROM  CompanyReportListTable c, ReportList rl WHERE c.reportid = rl.ReportID and rl.ReportVisible = 1 and CompanyID = " & DropDownList1.SelectedValue



        Using Conn
            Conn.Open()
            Dim comm As New SqlCommand(valsql, Conn)
            Dim da As New SqlDataAdapter(comm) 'da serves as the new sqldataadapter for my sqlcommand
            da.Fill(ds)
            'da.Fill(dt)

            da.SelectCommand.CommandText = valsql1
            da.Fill(ds_Reports)



        End Using

        ds_Reports.Relations.Add("CompanyReport", ds_Reports.Tables(0).Columns("ReportID"), ds_Reports.Tables(1).Columns("ReportID"))



        valGrid1.DataSource = ds_Reports.Tables(0)
        valGrid1.DataBind()




        For i = 0 To ds.Tables(0).Rows.Count - 1
            If ds.Tables(0).Rows(i).Item(3).ToString = "M" Then
                DropDownList2.Items.Insert(0, "Member")
                DropDownList2.Items.Insert(1, "Non-Member")
                TextBox1.Text = "M"
            Else
                DropDownList2.Items.Insert(0, "Non-Member")
                DropDownList2.Items.Insert(1, "Member")
                TextBox1.Text = "NM"
            End If

        Next


    Else

        DropDownList2.Items.Clear()
        DropDownList3.Items.Clear()
        TextBox1.Text.ToString()
        DropDownList1.Items.Clear()
    End If
End Sub

...和我的数据网格前端。任何帮助将不胜感激。

        <asp:DataGrid ID="valGrid1" runat="server" AutoGenerateColumns="false" BorderWidth="0">

       <Columns>

           <asp:TemplateColumn>
                <ItemTemplate>
                <asp:DataGrid id="valgrid2" runat="server" AutoGenerateColumns="false" BorderWidth="0" datasource='<%#Container.DataItem.Row.GetChildRows("CompanyReport")%>'>
                    <Columns>
                         <asp:TemplateColumn>

                            <ItemTemplate>
                                <asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# IIf((Container.DataItem("ReportID")).ToString().Equals(""), "false", "true")%>'/>

                                <asp:Label ID="lblRptName" runat="server" Text='<%# ((Container.DataItem("ReportName")).ToString())%>'></asp:Label>

                                 <asp:Label ID="lblReportID" Visible="false" runat="server" Text='<%# Container.DataItem("ReportID") %>' />

                            </ItemTemplate>
                        </asp:TemplateColumn>
                    </Columns>
            </asp:DataGrid>

            </ItemTemplate>
           </asp:TemplateColumn>


       </Columns>

   </asp:DataGrid>

【问题讨论】:

    标签: vb.net wpfdatagrid


    【解决方案1】:
    SELECT COLUMNS FROM TABLE WHERE COLUMN IS NOT NULL
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 2012-01-13
      • 1970-01-01
      • 2017-07-31
      • 2021-02-09
      • 2017-12-11
      • 2010-09-30
      相关资源
      最近更新 更多