[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 560
  • Last Modified:

dropdownlists filters gridview

Hello,

I have a page with three dropdownlist controls.  The first ddl control sets the choice for the second ddl control, the second ddl control setup the choice for the third control.
These controls function well.
However, I am attempting to filter one gridview such as when the user makes one selection from the first ddl control (using autopostback=true), the gridview updates to display only the entries that matches the selection from that ddl control.

My page code follows:
----------------

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPages/Main.Master" AutoEventWireup="true"
    CodeBehind="DetentionWatch.aspx.cs" Inherits="Detention_DWL.DetentionWatch" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <link href="CSS/main.css" rel="stylesheet" type="text/css" />
    <style type="text/css">
        .style1
        {
            height: 16px;
        }
        .style3
        {
            width: 168px;
        }
        .style4
        {
            width: 168px;
            height: 20px;
        }
        .style5
        {
            height: 20px;
        }
    </style>
    </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolderMain" runat="server">
    <asp:SqlDataSource ID="ds_position" runat="server" ConnectionString="<%$ ConnectionStrings:DetentionDWLConnectionString %>"
        DeleteCommand="DELETE FROM [CodeTable_Position] WHERE [Position_ID] = @Position_ID"
        InsertCommand="INSERT INTO [CodeTable_Position] ([Building_ID], [Floor_ID], [Shift_ID], [Position_Name], [Position_Desc]) VALUES (@Building_ID, @Floor_ID, @Shift_ID, @Position_Name, @Position_Desc)
" SelectCommand="SELECT [Position_ID], [Building_ID], [Floor_ID], [Shift_ID], [Position_Name], [Position_Desc] FROM [CodeTable_Position]"
        UpdateCommand="UPDATE [CodeTable_Position] SET [Building_ID] = @Building_ID, [Floor_ID] = @Floor_ID, [Shift_ID] = @Shift_ID, [Position_Name] = @Position_Name, [Position_Desc] = @Position_Desc WHERE [Position_ID] = @Position_ID">
        <DeleteParameters>
            <asp:Parameter Name="Position_ID" Type="Int32" />
        </DeleteParameters>
        <UpdateParameters>
            <asp:Parameter Name="Building_ID" Type="Int32" />
            <asp:Parameter Name="Floor_ID" Type="Int32" />
            <asp:Parameter Name="Shift_ID" Type="Int32" />
            <asp:Parameter Name="Position_Name" Type="String" />
            <asp:Parameter Name="Position_Desc" Type="String" />
            <asp:Parameter Name="Position_ID" Type="Int32" />
        </UpdateParameters>
        <InsertParameters>
            <asp:Parameter Name="Building_ID" Type="Int32" />
            <asp:Parameter Name="Floor_ID" Type="Int32" />
            <asp:Parameter Name="Shift_ID" Type="Int32" />
            <asp:Parameter Name="Position_Name" Type="String" />
            <asp:Parameter Name="Position_Desc" Type="String" />
        </InsertParameters>
    </asp:SqlDataSource>
    <asp:Panel ID="Panel1" runat="server" Height="874px">
        <div>
            <!-- Begin Wrapper -->
            <div id="wrapper">
                <!-- Begin Header -->
                <div id="header">
               
             <img src="Application/images/IntrannetLogo.JPG" alt="Harris County Sheriff's Office" />
                   
                </div>
                <!-- End Header -->
                <!-- Begin Navigation -->
                <div id="navigation">
               <center><h1> Detention Facility Daily Watch List</h1></center>
                </div>
                <!-- End Navigation -->
                <!-- Begin Faux Columns -->
                <div id="faux">
                    <!-- Begin Left Column -->
                    <div id="leftcolumn">
                        <h3>
                            Navigation Menu</h3>
                        <br />
                         <asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl="~/mantenance_page.aspx">Maintenance Page</asp:HyperLink>
                        <br />
                        <br />
                        Option Two
                        <br />
                        <br />
                        Option Three
                        <br />
                        <br />
                        Option Four
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                    </div>
                    <!-- End Left Column -->
                    <!-- Begin Content Column -->
                    <div id="content">
                        <center>
                           
                        </center>
                        <br />
                        <p>
                            This text is for instructions on how to use the Detention Watch List aplication to deploy staff.
                            <br />
                            <br />
                        </p>
                        <table width="100%" cellpadding="0" cellspacing="0" border="0">
                            <tr>
                                <td colspan="2">
                                    <p align="center">
                                        <span style="font-size: larger; color: Blue; font-family: Verdana; font-style: italic">
                                            &nbsp;</span></p>
                                </td>
                            </tr>
                             <tr>
                             
                              <td colspan="6" valign="top" align="left">&nbsp;
                              <table width="100%" cellpadding="0" cellspacing="0" border="0">
                              <tr>
                              <td width="15%" valign="top" align="right">&nbsp;Building</td>
                              <td width="15%" valign="top" align="left">&nbsp;<asp:DropDownList ID="ddl_Building" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddl_Building_SelectedIndexChanged">
                                                    <asp:ListItem Text="--Select Building--"></asp:ListItem>
                                                </asp:DropDownList></td>
                              <td width="15%" valign="top" align="right">&nbsp;Floor</td>
                              <td width="15%" valign="top" align="left">&nbsp;<asp:DropDownList ID="ddl_floor" runat="server" AutoPostBack="True" Enabled="False"
                                                    OnSelectedIndexChanged="ddl_floor_SelectedIndexChanged">
                                                    <asp:ListItem Text="--Select Floor--"></asp:ListItem>
                                                </asp:DropDownList></td>
                              <td width="15%" valign="top" align="right">&nbsp;Shift</td>
                              <td width="15%" valign="top" align="left">&nbsp;<asp:DropDownList ID="ddl_shift" runat="server" AutoPostBack="True" Enabled="False"
                                                    OnSelectedIndexChanged="ddl_shift_SelectedIndexChanged">
                                                    <asp:ListItem Text="--Select Shift--"></asp:ListItem>
                                                </asp:DropDownList></td>
                              </tr>
                             
                              </table>
                             
                              </td>
                              </tr>
         
                                     
                                       
                                       
                                     
                                        <tr>
                                            <td valign="top" align="left" class="style3">
                                                &nbsp;Your Choices:
                                            </td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp;
                                                <asp:Label ID="lbl_building" runat="server" Text=" " BackColor="white"></asp:Label>
                                                &nbsp;
                                                <asp:Label ID="lbl_floor" runat="server" Text=" " BackColor="white"></asp:Label>
                                                &nbsp;
                                                <asp:Label ID="lbl_shift" runat="server" Text=" " BackColor="white"></asp:Label>
                                            </td>
                                        </tr>
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;
                                                </td>
                                        </tr>
                                       
                                          <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;
                                                </td>
                                        </tr>
                                         <tr>
                                            <td valign="top" align="left" class="style3">
                                                &nbsp;Jail Key:
                                            </td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp;<asp:Label ID="lbl_jail_key" runat="server" BackColor="#B0A63C"></asp:Label>
                                             
                                            </td>
                                        </tr>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                       
                                         <tr>
                                           <td valign="top" align="left" class="style3"> &nbsp;</td>
                                            <td colspan="5" valign="top" align="left">
                                                <asp:Label ID="lbl_jail_key_filter" runat="server" Text="jail_key_filter"></asp:Label>
                                             </td>
                                        </tr>
                                       
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                       
                                       
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                          <tr>
                                            <td valign="top" align="left" class="style3">
                                                &nbsp;Position Name:
                                            </td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp;<asp:TextBox ID="txt_posTitle" runat="server" Width="460px"
                                                    Font-Names="Arial" Font-Size="Small"  AutoPostBack="true"
                                                    OnTextChanged="txt_posTitle_TextChanged" ToolTip="Write Position Title"
                                                    Height="21px" />
                                               <%-- <asp:RequiredFieldValidator ID="RFV_pos_title" runat="server" ErrorMessage="Must Enter Position Title" ControlToValidate="txt_posTitle" ></asp:RequiredFieldValidator> --%>
                                            </td>
                                        </tr>
                                           <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;
                                                </td>
                                        </tr>
                                       
                                         
                                       
                                        <tr>
                                            <td valign="top" align="left" class="style3">
                                                &nbsp;New Position Description:
                                            </td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp;<asp:TextBox ID="txt_positionDesc" runat="server" Height="50px" TextMode="MultiLine"
                                                    Width="461px"  ToolTip="Write Position Description"></asp:TextBox>
                                               <%-- <asp:RequiredFieldValidator ID="RFV_pos_desc" runat="server" ErrorMessage="Must Enter Position Description" ControlToValidate="txt_positionDesc"></asp:RequiredFieldValidator>--%>
                                                   
                                            </td>
                                        </tr>
                                       
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                       
                                         <tr>
                                           <td valign="top" align="left" class="style3"> &nbsp;Position Key</td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp;<asp:Label ID="lbl_position_key" runat="server" Width="250px"
                                                    BackColor="#B0A63C"></asp:Label></td>
                                        </tr>
                                       
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;
                                               
                                            </td>
                                        </tr>
                                       
                                       
                                       
                                         <tr>
                                           <td valign="top" align="left" class="style3"> &nbsp;Composite Key:</td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp; <asp:Label ID="lbl_composite_key" runat="server" BackColor="#B0A63C"></asp:Label></td>
                                        </tr>
                                       
                                       
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp; <asp:Button ID="btn_select_from_existing" runat="server"
                                                    Text="Select from Existing" onclick="btn_select_from_existing_Click" />&nbsp; &nbsp; &nbsp; &nbsp;
                                                <asp:Button ID="btn_save_position_02" runat="server" OnClick="btn_save_position_02_Click"
                                                    Text="Save Position" /> &nbsp; &nbsp; &nbsp; &nbsp;
                                                <asp:Button ID="btn_newPosition" runat="server" OnClick="btn_NewPosition_Click"
                                                    Text="Create New Position" />
                                               
                                            </td>
                                        </tr>
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;
                                            </td>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                <asp:Panel ID="pnl_position_existing" runat="server" BackColor="Beige"
                                                    Width="1021px">
                                                    <asp:GridView ID="gv_position_existing" runat="server"
                                                        AutoGenerateColumns="False" CellPadding="4" DataKeyNames="Position_ID"
                                                        DataSourceID="ds_position_existing" ForeColor="#333333" GridLines="None"
                                                        Width="997px" AllowSorting="True"
                                                        AutoGenerateSelectButton="True"
                                                        onselectedindexchanged="gv_position_existing_SelectedIndexChanged" >
                                                        <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
                                                        <Columns>
                                                               
                                                           <%-- <asp:BoundField DataField="Position_ID" HeaderText="Pos ID"
                                                                InsertVisible="False" ReadOnly="True" SortExpression="Position_ID" />
                                                            <asp:BoundField DataField="Building_ID" HeaderText="Bldg ID"
                                                                SortExpression="Building_ID" />
                                                            <asp:BoundField DataField="Floor_ID" HeaderText="Flr ID"
                                                                SortExpression="Floor_ID" />--%>
                                                            <%--<asp:BoundField DataField="Shift_ID" HeaderText="Shift ID"
                                                                SortExpression="Shift_ID" />--%>
                                                            <asp:TemplateField HeaderText="Bldg Code" SortExpression="Building_Code">
                                                                <EditItemTemplate>
                                                                    <asp:TextBox ID="txt_building" runat="server" Text='<%# Bind("Building_Code") %>'></asp:TextBox>
                                   <!-- In Edit mode the dropdownlist is bound to the SubjectDataSource -->                 <asp:DropDownList ID="ddl_building" runat="server" DataSourceID="ds_position_existing"  DataTextField="Building_Code" DataValueField="Building_ID" Text='<%# Bind("Building_Code") %>'>                 </asp:DropDownList>
                                    </EditItemTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lbl_building" runat="server" Text='<%# Bind("Building_Code") %>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField HeaderText="Flr Name" SortExpression="Floor_Name">
                                                                <EditItemTemplate>
                                                                    <asp:TextBox ID="txt_floor" runat="server" Text='<%# Bind("Floor_Name") %>'></asp:TextBox>
                                                                </EditItemTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lbl_floor" runat="server" Text='<%# Bind("Floor_Name") %>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField HeaderText="Shift Name" SortExpression="Shift_Name">
                                                                <EditItemTemplate>
                                                                    <asp:TextBox ID="txt_shift" runat="server" Text='<%# Bind("Shift_Name") %>'></asp:TextBox>
                                                                </EditItemTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lbl_shift" runat="server" Text='<%# Bind("Shift_Name") %>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:BoundField DataField="Jail_Key" HeaderText="Jail Key"
                                                                ItemStyle-Width="150px" SortExpression="Jail_Key">
                                                                <ItemStyle Width="150px" />
                                                            </asp:BoundField>
                                                            <asp:BoundField DataField="Position_Title" HeaderText="Pos Title"
                                                                SortExpression="Position_Title" />
                                                            <asp:BoundField DataField="Position_Desc" HeaderText="Pos Desc"
                                                                SortExpression="Position_Desc" ItemStyle-Width="150px">
                                                                <ItemStyle Width="150px" />
                                                            </asp:BoundField>
                                                            <asp:BoundField DataField="Position_Key" HeaderText="Pos Key"
                                                                SortExpression="Position_Key" ItemStyle-Width="150px" >
                                                                <ItemStyle Width="150px" />
                                                            </asp:BoundField>
                                                            <asp:BoundField DataField="Composite_Key" HeaderText="Comp Key"
                                                                SortExpression="Composite_Key" ItemStyle-Width="200px">
                                                                <ItemStyle Width="200px" />
                                                            </asp:BoundField>
                                                           
                                                           
                                                           
                                                           
                                                        </Columns>
                                                       
                                                        <EmptyDataTemplate>No Data Exists that Matches Filters!     </EmptyDataTemplate>
                                                        <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                                        <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                                                        <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                                                        <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                                        <EditRowStyle BackColor="#999999" />
                                                        <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
                                                    </asp:GridView>
                                               
                                               
                                               
                                               
                                               
                                                    <asp:SqlDataSource ID="ds_position_existing" runat="server"
                                                        ConflictDetection="CompareAllValues"
                                                        ConnectionString="<%$ ConnectionStrings:DetentionDWLConnectionString %>"
                                                        DeleteCommand="DELETE FROM [CodeTable_Position] WHERE [Position_ID] = @original_Position_ID AND [Building_ID] = @original_Building_ID AND [Floor_ID] = @original_Floor_ID AND (([Building_Code] = @original_Building_Code) OR ([Building_Code] IS NULL AND @original_Building_Code IS NULL)) AND (([Floor_Name] = @original_Floor_Name) OR ([Floor_Name] IS NULL AND @original_Floor_Name IS NULL)) AND [Shift_ID] = @original_Shift_ID AND (([Shift_Name] = @original_Shift_Name) OR ([Shift_Name] IS NULL AND @original_Shift_Name IS NULL)) AND (([Jail_Key] = @original_Jail_Key) OR ([Jail_Key] IS NULL AND @original_Jail_Key IS NULL)) AND (([Position_Title] = @original_Position_Title) OR ([Position_Title] IS NULL AND @original_Position_Title IS NULL)) AND (([Position_Desc] = @original_Position_Desc) OR ([Position_Desc] IS NULL AND @original_Position_Desc IS NULL)) AND (([Position_Key] = @original_Position_Key) OR ([Position_Key] IS NULL AND @original_Position_Key IS NULL)) AND (([Composite_Key] = @original_Composite_Key) OR ([Composite_Key] IS NULL AND @original_Composite_Key IS NULL))"
                                                        InsertCommand="INSERT INTO [CodeTable_Position] ([Building_ID], [Floor_ID], [Building_Code], [Floor_Name], [Shift_ID], [Shift_Name], [Jail_Key], [Position_Title], [Position_Desc], [Position_Key], [Composite_Key]) VALUES (@Building_ID, @Floor_ID, @Building_Code, @Floor_Name, @Shift_ID, @Shift_Name, @Jail_Key, @Position_Title, @Position_Desc, @Position_Key, @Composite_Key)"
                                                        OldValuesParameterFormatString="original_{0}"
                                                        SelectCommand="SELECT [Position_ID], [Building_ID], [Floor_ID], [Building_Code], [Floor_Name], [Shift_ID], [Shift_Name], [Jail_Key], [Position_Title], [Position_Desc], [Position_Key], [Composite_Key] FROM [CodeTable_Position] ORDER BY [Building_ID], [Floor_ID], [Shift_ID]"
                                                       
                                                        UpdateCommand="UPDATE [CodeTable_Position] SET [Building_ID] = @Building_ID, [Floor_ID] = @Floor_ID, [Building_Code] = @Building_Code, [Floor_Name] = @Floor_Name, [Shift_ID] = @Shift_ID, [Shift_Name] = @Shift_Name, [Jail_Key] = @Jail_Key, [Position_Title] = @Position_Title, [Position_Desc] = @Position_Desc, [Position_Key] = @Position_Key, [Composite_Key] = @Composite_Key WHERE [Position_ID] = @original_Position_ID AND [Building_ID] = @original_Building_ID AND [Floor_ID] = @original_Floor_ID AND (([Building_Code] = @original_Building_Code) OR ([Building_Code] IS NULL AND @original_Building_Code IS NULL)) AND (([Floor_Name] = @original_Floor_Name) OR ([Floor_Name] IS NULL AND @original_Floor_Name IS NULL)) AND [Shift_ID] = @original_Shift_ID AND (([Shift_Name] = @original_Shift_Name) OR ([Shift_Name] IS NULL AND @original_Shift_Name IS NULL)) AND (([Jail_Key] = @original_Jail_Key) OR ([Jail_Key] IS NULL AND @original_Jail_Key IS NULL)) AND (([Position_Title] = @original_Position_Title) OR ([Position_Title] IS NULL AND @original_Position_Title IS NULL)) AND (([Position_Desc] = @original_Position_Desc) OR ([Position_Desc] IS NULL AND @original_Position_Desc IS NULL)) AND (([Position_Key] = @original_Position_Key) OR ([Position_Key] IS NULL AND @original_Position_Key IS NULL)) AND (([Composite_Key] = @original_Composite_Key) OR ([Composite_Key] IS NULL AND @original_Composite_Key IS NULL))">
                                                        <DeleteParameters>
                                                            <asp:Parameter Name="original_Position_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Building_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Floor_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Building_Code" Type="String" />
                                                            <asp:Parameter Name="original_Floor_Name" Type="String" />
                                                            <asp:Parameter Name="original_Shift_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Shift_Name" Type="String" />
                                                            <asp:Parameter Name="original_Jail_Key" Type="String" />
                                                            <asp:Parameter Name="original_Position_Title" Type="String" />
                                                            <asp:Parameter Name="original_Position_Desc" Type="String" />
                                                            <asp:Parameter Name="original_Position_Key" Type="String" />
                                                            <asp:Parameter Name="original_Composite_Key" Type="String" />
                                                        </DeleteParameters>
                                                        <UpdateParameters>
                                                            <asp:Parameter Name="Building_ID" Type="Int32" />
                                                            <asp:Parameter Name="Floor_ID" Type="Int32" />
                                                            <asp:Parameter Name="Building_Code" Type="String" />
                                                            <asp:Parameter Name="Floor_Name" Type="String" />
                                                            <asp:Parameter Name="Shift_ID" Type="Int32" />
                                                            <asp:Parameter Name="Shift_Name" Type="String" />
                                                            <asp:Parameter Name="Jail_Key" Type="String" />
                                                            <asp:Parameter Name="Position_Title" Type="String" />
                                                            <asp:Parameter Name="Position_Desc" Type="String" />
                                                            <asp:Parameter Name="Position_Key" Type="String" />
                                                            <asp:Parameter Name="Composite_Key" Type="String" />
                                                            <asp:Parameter Name="original_Position_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Building_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Floor_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Building_Code" Type="String" />
                                                            <asp:Parameter Name="original_Floor_Name" Type="String" />
                                                            <asp:Parameter Name="original_Shift_ID" Type="Int32" />
                                                            <asp:Parameter Name="original_Shift_Name" Type="String" />
                                                            <asp:Parameter Name="original_Jail_Key" Type="String" />
                                                            <asp:Parameter Name="original_Position_Title" Type="String" />
                                                            <asp:Parameter Name="original_Position_Desc" Type="String" />
                                                            <asp:Parameter Name="original_Position_Key" Type="String" />
                                                            <asp:Parameter Name="original_Composite_Key" Type="String" />
                                                        </UpdateParameters>
                                                        <InsertParameters>
                                                            <asp:Parameter Name="Building_ID" Type="Int32" />
                                                            <asp:Parameter Name="Floor_ID" Type="Int32" />
                                                            <asp:Parameter Name="Building_Code" Type="String" />
                                                            <asp:Parameter Name="Floor_Name" Type="String" />
                                                            <asp:Parameter Name="Shift_ID" Type="Int32" />
                                                            <asp:Parameter Name="Shift_Name" Type="String" />
                                                            <asp:Parameter Name="Jail_Key" Type="String" />
                                                            <asp:Parameter Name="Position_Title" Type="String" />
                                                            <asp:Parameter Name="Position_Desc" Type="String" />
                                                            <asp:Parameter Name="Position_Key" Type="String" />
                                                            <asp:Parameter Name="Composite_Key" Type="String" />
                                                        </InsertParameters>
                                                       
                                                         
                                                 <SelectParameters>
                <asp:ControlParameter ControlID="ddl_Building" DefaultValue=" " Name="Building_Code"
                    PropertyName="SelectedValue" Type="String" />
            </SelectParameters>

                                                       
                                                       
                                                    </asp:SqlDataSource>
                                               
                                               
                                               
                                               
                                                </asp:Panel>
                                             </td>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left" class="style1">
                                                </td>
                                        </tr>
                                     
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;

                                            </td>
                                        </tr>
                                       
                                       
                                       
                                       
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;
                                            </td>
                                        </tr>
                                        <tr>
                                            <td colspan="6" valign="top" align="left" class="style1">
                                                &nbsp;
                                            </td>
                                        </tr>
                                       
                                          <tr>
                                           
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                         <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                       
                                         <tr>
                                           <td valign="top" align="left" class="style3"> &nbsp;</td>
                                            <td colspan="5" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                       
                                        <tr>
                                            <td colspan="6" valign="top" align="left">
                                                &nbsp;</td>
                                        </tr>
                                    </table>
                               
                   
                        <br />
                        <asp:Panel ID="pnl_position" runat="server" BackColor="Beige" Visible="true">
                            <asp:SqlDataSource ID="ds_position05" runat="server" ConflictDetection="CompareAllValues"
                                ConnectionString="<%$ ConnectionStrings:DetentionDWLConnectionString %>" DeleteCommand="DELETE FROM [CodeTable_Position] WHERE [Position_ID] = @original_Position_ID AND [Building_ID] = @original_Building_ID AND (([Building_Code] = @original_Building_Code) OR ([Building_Code] IS NULL AND @original_Building_Code IS NULL)) AND [Floor_ID] = @original_Floor_ID AND (([Floor_Name] = @original_Floor_Name) OR ([Floor_Name] IS NULL AND @original_Floor_Name IS NULL)) AND [Shift_ID] = @original_Shift_ID AND (([Shift_Name] = @original_Shift_Name) OR ([Shift_Name] IS NULL AND @original_Shift_Name IS NULL)) AND (([Jail_Key] = @original_Jail_Key) OR ([Jail_Key] IS NULL AND @original_Jail_Key IS NULL)) AND (([Position_Title] = @original_Position_Title) OR ([Position_Title] IS NULL AND @original_Position_Title IS NULL)) AND (([Position_Desc] = @original_Position_Desc) OR ([Position_Desc] IS NULL AND @original_Position_Desc IS NULL)) AND (([Position_Key] = @original_Position_Key) OR ([Position_Key] IS NULL AND @original_Position_Key IS NULL)) AND (([Composite_Key] = @original_Composite_Key) OR ([Composite_Key] IS NULL AND @original_Composite_Key IS NULL))"
                               
                                InsertCommand="INSERT INTO [CodeTable_Position] ([Building_ID], [Building_Code], [Floor_ID], [Floor_Name], [Shift_ID], [Shift_Name], [Jail_Key], [Position_Title], [Position_Desc], [Position_Key], [Composite_Key]) VALUES (@Building_ID, @Building_Code, @Floor_ID, @Floor_Name, @Shift_ID, @Shift_Name, @Jail_Key, @Position_Title, @Position_Desc, @Position_Key, @Composite_Key)"
                               
                                OldValuesParameterFormatString="original_{0}" SelectCommand="SELECT [Position_ID], [Building_ID], [Building_Code], [Floor_ID], [Floor_Name], [Shift_ID], [Shift_Name], [Jail_Key], [Position_Title], [Position_Desc], [Position_Key], [Composite_Key] FROM [CodeTable_Position] ORDER BY [Building_ID], [Floor_ID], [Shift_ID]"
                               
                                UpdateCommand="UPDATE [CodeTable_Position] SET [Building_ID] = @Building_ID, [Building_Code] = @Building_Code, [Floor_ID] = @Floor_ID, [Floor_Name] = @Floor_Name, [Shift_ID] = @Shift_ID, [Shift_Name] = @Shift_Name, [Jail_Key] = @Jail_Key, [Position_Title] = @Position_Title, [Position_Desc] = @Position_Desc, [Position_Key] = @Position_Key, [Composite_Key] = @Composite_Key WHERE [Position_ID] = @original_Position_ID AND [Building_ID] = @original_Building_ID AND (([Building_Code] = @original_Building_Code) OR ([Building_Code] IS NULL AND @original_Building_Code IS NULL)) AND [Floor_ID] = @original_Floor_ID AND (([Floor_Name] = @original_Floor_Name) OR ([Floor_Name] IS NULL AND @original_Floor_Name IS NULL)) AND [Shift_ID] = @original_Shift_ID AND (([Shift_Name] = @original_Shift_Name) OR ([Shift_Name] IS NULL AND @original_Shift_Name IS NULL)) AND (([Jail_Key] = @original_Jail_Key) OR ([Jail_Key] IS NULL AND @original_Jail_Key IS NULL)) AND (([Position_Title] = @original_Position_Title) OR ([Position_Title] IS NULL AND @original_Position_Title IS NULL)) AND (([Position_Desc] = @original_Position_Desc) OR ([Position_Desc] IS NULL AND @original_Position_Desc IS NULL)) AND (([Position_Key] = @original_Position_Key) OR ([Position_Key] IS NULL AND @original_Position_Key IS NULL)) AND (([Composite_Key] = @original_Composite_Key) OR ([Composite_Key] IS NULL AND @original_Composite_Key IS NULL))">
                                <DeleteParameters>
                                    <asp:Parameter Name="original_Position_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Building_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Building_Code" Type="String" />
                                    <asp:Parameter Name="original_Floor_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Floor_Name" Type="String" />
                                    <asp:Parameter Name="original_Shift_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Shift_Name" Type="String" />
                                    <asp:Parameter Name="original_Jail_Key" Type="String" />
                                    <asp:Parameter Name="original_Position_Title" Type="String" />
                                    <asp:Parameter Name="original_Position_Desc" Type="String" />
                                    <asp:Parameter Name="original_Position_Key" Type="String" />
                                    <asp:Parameter Name="original_Composite_Key" Type="String" />
                                </DeleteParameters>
                                <UpdateParameters>
                                    <asp:Parameter Name="Building_ID" Type="Int32" />
                                    <asp:Parameter Name="Building_Code" Type="String" />
                                    <asp:Parameter Name="Floor_ID" Type="Int32" />
                                    <asp:Parameter Name="Floor_Name" Type="String" />
                                    <asp:Parameter Name="Shift_ID" Type="Int32" />
                                    <asp:Parameter Name="Shift_Name" Type="String" />
                                    <asp:Parameter Name="Jail_Key" Type="String" />
                                    <asp:Parameter Name="Position_Title" Type="String" />
                                    <asp:Parameter Name="Position_Desc" Type="String" />
                                    <asp:Parameter Name="Position_Key" Type="String" />
                                    <asp:Parameter Name="Composite_Key" Type="String" />
                                    <asp:Parameter Name="original_Position_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Building_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Building_Code" Type="String" />
                                    <asp:Parameter Name="original_Floor_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Floor_Name" Type="String" />
                                    <asp:Parameter Name="original_Shift_ID" Type="Int32" />
                                    <asp:Parameter Name="original_Shift_Name" Type="String" />
                                    <asp:Parameter Name="original_Jail_Key" Type="String" />
                                    <asp:Parameter Name="original_Position_Title" Type="String" />
                                    <asp:Parameter Name="original_Position_Desc" Type="String" />
                                    <asp:Parameter Name="original_Position_Key" Type="String" />
                                    <asp:Parameter Name="original_Composite_Key" Type="String" />
                                </UpdateParameters>
                                <InsertParameters>
                                    <asp:Parameter Name="Building_ID" Type="Int32" />
                                    <asp:Parameter Name="Building_Code" Type="String" />
                                    <asp:Parameter Name="Floor_ID" Type="Int32" />
                                    <asp:Parameter Name="Floor_Name" Type="String" />
                                    <asp:Parameter Name="Shift_ID" Type="Int32" />
                                    <asp:Parameter Name="Shift_Name" Type="String" />
                                    <asp:Parameter Name="Jail_Key" Type="String" />
                                    <asp:Parameter Name="Position_Title" Type="String" />
                                    <asp:Parameter Name="Position_Desc" Type="String" />
                                    <asp:Parameter Name="Position_Key" Type="String" />
                                    <asp:Parameter Name="Composite_Key" Type="String" />
                                </InsertParameters>
                            </asp:SqlDataSource>
                        </asp:Panel>
                    </div>
                    <!-- End Content Column -->
                    <!-- Begin Right Column -->
                    <div id="rightcolumn">
                        <h3>
                            Instructions</h3>
                        <br />
                            This text is for instructions on how to use the Detention Watch List aplication to deploy staff.
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                    </div>
                    <!-- End Right Column -->
                </div>
                <!-- End Faux Columns -->
                <!-- Begin Footer -->
                <div id="footer">
                    &nbsp;
                </div>
                <!-- End Footer -->
            </div>
            <!-- End Wrapper -->
        </div>
    </asp:Panel>
</asp:Content>
----------------

My codebehind code follows:

-------------------
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;



namespace Detention_DWL
{
    public partial class DetentionWatch : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
           

            if (!IsPostBack)
            {
                ddl_Building.AppendDataBoundItems = true;
                String strConnString = ConfigurationManager.ConnectionStrings["DetentionDWLConnectionString"].ConnectionString;
                String strQuery = "select Building_ID, Building_Code from CodeTable_Building";
                SqlConnection con = new SqlConnection(strConnString);

                SqlCommand cmd = new SqlCommand();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = strQuery;
                cmd.Connection = con;

                try
                {
                    con.Open();
                    ddl_Building.DataSource = cmd.ExecuteReader();
                    ddl_Building.DataTextField = "Building_Code";
                    ddl_Building.DataValueField = "Building_ID";
                    ddl_Building.DataBind();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    con.Close();
                    con.Dispose();
                   

                }
               
               
            }

        }



        protected void ddl_Building_SelectedIndexChanged(object sender, EventArgs e)
        {
            ddl_floor.Items.Clear();
            ddl_floor.Items.Add(new ListItem("--Select Floor--", ""));
            ddl_shift.Items.Clear();
            ddl_shift.Items.Add(new ListItem("--Select Shift--", ""));

            ddl_floor.AppendDataBoundItems = true;
            String strConnString = ConfigurationManager.ConnectionStrings["DetentionDWLConnectionString"].ConnectionString;
            String strQuery = "select Floor_ID, Floor_Name from CodeTable_Floor " + "where Building_ID=@Building_ID";
            SqlConnection con = new SqlConnection(strConnString);
            SqlCommand cmd = new SqlCommand();
            cmd.Parameters.AddWithValue("@Building_ID", ddl_Building.SelectedItem.Value);
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strQuery;
            cmd.Connection = con;

            try
            {
                con.Open();
                ddl_floor.DataSource = cmd.ExecuteReader();
                ddl_floor.DataTextField = "Floor_Name";
                ddl_floor.DataValueField = "Floor_ID";
                ddl_floor.DataBind();
                if (ddl_floor.Items.Count > 1)
                {
                    ddl_floor.Enabled = true;
                }
                else
                {
                    ddl_floor.Enabled = false;
                    ddl_shift.Enabled = false;

                 

                    DropDownList dd = (DropDownList)sender;
                    Session["fltr_session_building"] = dd.SelectedValue;
                    gv_position_existing.DataBind();


                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();
                lbl_building.Text = " " + ddl_Building.SelectedItem.Text;

            }
        }

        protected void ddl_floor_SelectedIndexChanged(object sender, EventArgs e)
        {
            ddl_shift.Items.Clear();
            ddl_shift.Items.Add(new ListItem("--Select Shift--", ""));


            ddl_shift.AppendDataBoundItems = true;
            String strConnString = ConfigurationManager.ConnectionStrings["DetentionDWLConnectionString"].ConnectionString;
            String strQuery = "select Shift_ID, Shift_Name from CodeTable_Shift " + "where Floor_ID=@Floor_ID";
            SqlConnection con = new SqlConnection(strConnString);
            SqlCommand cmd = new SqlCommand();
            cmd.Parameters.AddWithValue("@Floor_ID", ddl_floor.SelectedItem.Value);
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strQuery;
            cmd.Connection = con;

            try
            {
                con.Open();
                ddl_shift.DataSource = cmd.ExecuteReader();
                ddl_shift.DataTextField = "Shift_Name";
                ddl_shift.DataValueField = "Shift_ID";
                ddl_shift.DataBind();
                if (ddl_shift.Items.Count > 1)
                {
                    ddl_shift.Enabled = true;
                }
                else
                {
                    ddl_shift.Enabled = false;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();

                lbl_floor.Text = " " + ddl_floor.SelectedItem.Text;
       

            }
        }

        protected void ddl_shift_SelectedIndexChanged(object sender, EventArgs e)
        {

            lbl_building.Text = " " + ddl_Building.SelectedItem.Text;
            lbl_floor.Text = " " + ddl_floor.SelectedItem.Text;
            lbl_shift.Text = " " + ddl_shift.SelectedItem.Text;

            lbl_jail_key.Text = "Building: " +
            ddl_Building.SelectedItem.Text + "-->Floor: " +
            ddl_floor.SelectedItem.Text + "-->Shift: " +
            ddl_shift.SelectedItem.Text;

            txt_posTitle.Text = " ";
            txt_positionDesc.Text = " ";

            lbl_jail_key_filter.Text = lbl_jail_key.Text;

            show_pnl_position();

        }

   

        protected void btn_generate_jail_key_Click(object sender, EventArgs e)
        {
            lbl_jail_key.Text = "Building: " +
           ddl_Building.SelectedItem.Text + "-->Floor: " +
           ddl_floor.SelectedItem.Text + "-->Shift: " +
           ddl_shift.SelectedItem.Text;
        }

     


       

        protected void btn_NewPosition_Click(object sender, EventArgs e)
        {
            Response.Redirect("DetentionWatch.aspx");
        }

     

        protected void txt_posTitle_TextChanged(object sender, EventArgs e)
        {
            lbl_position_key.Text = "Position: " + txt_posTitle.Text;

            generatecompkey();

            txt_positionDesc.Focus();

        }


        protected void generatecompkey()
        {
            lbl_composite_key.Text = "Composite Key: " + lbl_jail_key.Text + "-->" + lbl_position_key.Text;
        }


     
   

        protected void btn_save_position_02_Click(object sender, EventArgs e)
        {

            SqlConnection Conn = new SqlConnection(ConfigurationManager.ConnectionStrings["DetentionDWLConnectionString"].ConnectionString);
            SqlCommand cmd = Conn.CreateCommand();
            cmd.CommandType = CommandType.Text;
            Conn.Open();

            cmd.CommandText = @"INSERT INTO [CodeTable_Position] ([Building_ID], [Building_Code], [Floor_ID], [Floor_Name], [Shift_ID], [Shift_Name], [Jail_Key], [Position_Title],[Position_Desc], [Position_Key], [Composite_Key]) VALUES (@Building_ID, @Building_Code, @Floor_ID, @Floor_Name, @Shift_ID, @Shift_Name, @Jail_Key, @Position_Title, @Position_Desc, @Position_Key, @Composite_Key)";



            cmd.Parameters.AddWithValue("@Building_ID", ddl_Building.SelectedValue);
            cmd.Parameters.AddWithValue("@Building_Code", lbl_building.Text);
            cmd.Parameters.AddWithValue("@Floor_ID", ddl_floor.SelectedValue);
            cmd.Parameters.AddWithValue("@Floor_Name", lbl_floor.Text);
            cmd.Parameters.AddWithValue("@Shift_ID", ddl_shift.SelectedValue);
            cmd.Parameters.AddWithValue("@Shift_Name", lbl_shift.Text);
            cmd.Parameters.AddWithValue("@Jail_Key", lbl_jail_key.Text);
            cmd.Parameters.AddWithValue("@Position_Title", txt_posTitle.Text);
            cmd.Parameters.AddWithValue("@Position_Desc", txt_positionDesc.Text);
            cmd.Parameters.AddWithValue("@Position_Key", lbl_position_key.Text);
            cmd.Parameters.AddWithValue("@Composite_Key", lbl_composite_key.Text);



            cmd.ExecuteNonQuery();
            Conn.Close(); //Close the connection with database


            gv_position_existing.DataBind();

         

            lbl_building.Text = " ";
       
            lbl_floor.Text = " ";
           
            lbl_shift.Text = " ";
         
            txt_posTitle.Text = " ";
            txt_positionDesc.Text = " ";
            lbl_jail_key.Text = " ";
            lbl_position_key.Text = " ";
            lbl_composite_key.Text = " ";

            this.DataBind();
           // gv_position05.Visible = true;
           // gv_position_existing.DataSource="ds_position_existing";

        }

       

        protected void show_pnl_position()
        {
            pnl_position_existing.Visible = true;
        }


       
         protected void hide_pnl_position()
        {
            pnl_position_existing.Visible = false;

        }


       

         protected void gv_position_existing_SelectedIndexChanged(object sender, EventArgs e)
         {
             lbl_building.Text = gv_position_existing.SelectedRow.Cells[1].Text.ToString();
       
             //txt_building.Text = gv_position_existing.SelectedRow.Cells[1].Text.ToString();
             //txt_floor.Text = gv_position_existing.SelectedRow.Cells[2].Text.ToString();
             //txt_shift.Text = gv_position_existing.SelectedRow.Cells[3].Text.ToString();

             txt_posTitle.Text = gv_position_existing.SelectedRow.Cells[5].Text.ToString();
             txt_positionDesc.Text = gv_position_existing.SelectedRow.Cells[6].Text.ToString();

             //DropDownList dd = (DropDownList)sender;
             //Session[fltr_session_building] = dd.SelectedValue;
         }

         protected void btn_select_from_existing_Click(object sender, EventArgs e)
         {
             show_pnl_position();

             lbl_building.Text = " ";
       
             lbl_floor.Text = " ";
             
             lbl_shift.Text = " ";
           
             txt_posTitle.Text = " ";
             txt_positionDesc.Text = " ";
             lbl_jail_key.Text = " ";
             lbl_position_key.Text = " ";
             lbl_composite_key.Text = " ";


         }

         protected void txt_building_TextChanged(object sender, EventArgs e)
         {

         }

     

        //protected void commandbutton1_command(object sender, System.Web.UI.Webcontrols.CommandEventArgs e)
        //{
        //    txt_posTitle.Text = e.CommandArgument;
        //}

     

        }
     
}
--------------

At this point, I am trying all I know to get the gridview to filter with no success. ANY help would be appreciated.
0
Codeaddict7423
Asked:
Codeaddict7423
1 Solution
 
TonyRebaCommented:
If I understand well you need to modify your select Statement for
                 ddl_Building datasource

and add  a WHERE condition when you use each dropdown field as control parameter....
0
 
Codeaddict7423Author Commented:
TonyReba,
Can you please explain.

I am attempting to do this:
------------
protected void ddl_Building_SelectedIndexChanged(object sender, EventArgs e)
        {
            ddl_floor.Items.Clear();
            ddl_floor.Items.Add(new ListItem("--Select Floor--", ""));
            ddl_shift.Items.Clear();
            ddl_shift.Items.Add(new ListItem("--Select Shift--", ""));

            ddl_floor.AppendDataBoundItems = true;
            String strConnString = ConfigurationManager.ConnectionStrings["DetentionDWLConnectionString"].ConnectionString;
            String strQuery = "select Floor_ID, Floor_Name from CodeTable_Floor " + "where Building_ID=@Building_ID";
            SqlConnection con = new SqlConnection(strConnString);
            SqlCommand cmd = new SqlCommand();
            cmd.Parameters.AddWithValue("@Building_ID", ddl_Building.SelectedItem.Value);
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strQuery;
            cmd.Connection = con;

            try
            {
                con.Open();
                ddl_floor.DataSource = cmd.ExecuteReader();
                ddl_floor.DataTextField = "Floor_Name";
                ddl_floor.DataValueField = "Floor_ID";
                ddl_floor.DataBind();
                if (ddl_floor.Items.Count > 1)
                {
                    ddl_floor.Enabled = true;
                }
                else
                {
                    ddl_floor.Enabled = false;
                    ddl_shift.Enabled = false;

                    Bind_gv_building();


                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();
                lbl_building.Text = " " + ddl_Building.SelectedItem.Text;

               
            }
        }

        private void Bind_gv_building()
        {
            DataTable dt = new DataTable();
            gv_position_existing.DataSource = dt;
            gv_position_existing.DataBind();


        }

--------------
however,  when ddl_building fires, the gridview control (gv_position_existing) does not refresh displaying only the building_code selected .

What I'm ultimately trying to do is to have the first ddl_building offer a selection of buildings, then as the user selects a building from this control, the second ddl (ddl_floor) offers up choices on a particular  building, then on the last ddl  (ddl_shift) that control offers choices for selecting a shift basedon the previoud floor and building choices

The gridview control should display first what building have previous choices been made available, adn show only that building basedon ddl_building, then as the  user selects a floor from ddl_floor, the grid updates again showing those buildings and floor combinations, then on the ddl_shift, as the user selects a shift, then the grid updates for the last time showing building->floor->shift combinations. if none exiists, then the user makes an entry to create one.....

ANY help would be greatly appreciated.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
sekarkarthickCommented:
0
 
starlite551Commented:
Please tell me all the SELECT Statements used in your code.. I can easily help you out with this.. I can provide you with an Optimized Code to do the stuff.. :)
0
 
starlite551Commented:
I want the SQL Queries used in your code.
0
 
starlite551Commented:
Also let me know the Table structures with all the column names..
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now