Modal Popup Extender Dilema

Discussion in 'ASP .Net Web Controls' started by jonefer, Apr 18, 2008.

  1. jonefer

    jonefer Guest

    I'd like to be able to take a gridview that has linked buttons to get
    descrete values that notify my popup panel to use as a parameter for an
    ObjectDataSource.

    I know there's a way, but it's not straightforward.

    Here's my asp update panel which contains a gridview and some linked buttons.
    The user will click the button on any row to see the detailed records of the
    number they click on. (my popup panel) AJAX's modalPopupExtender

    Specifically, for example the user will click one of the values from 'Breast
    Cancer Screening' which is a value in the first column, and I hope to filter
    the Panel for Breast Cancer and they would see the list of patients that
    haven't been screened for Breast Cancer.

    Also, there are 2 columns, which means that it should either bring up a 2nd
    pop-up to view Missed Opportunities. Or change the ObjectDataSource
    completely for the panel.

    Anyhow... with just 1 trigger (gridview) how do I get all these discrete
    actions to happen?

    This would help me tremendously, as my only solution thus far, is to forget
    about the gridview and create a table with discrete labels in it (link
    buttons) at which I will need to create 14 popup panels and modalpopup
    extenders.

    <asp:UpdatePanel ID="upQuality" runat="server" RenderMode="Inline"
    ChildrenAsTriggers="False" UpdateMode="Conditional">
    <ContentTemplate>
    <table cellpadding="2" style="width: 534px; height: 136px;">
    <tr>
    <td style="width: 111px;">
    <asp:SqlDataSource ID="sdsQuality"
    runat="server" ConnectionString="<%$ ConnectionStrings:IMS_cn %>"
    SelectCommand="SELECT DISTINCT
    PPU.vPPUBase.MeasureChartTitle AS Measure, SUM(PPU.vPPUBase.MeasureMissed) AS
    [Missed Opp], SUM(PPU.vPPUBase.MeasureDen - PPU.vPPUBase.MeasureNum) AS
    [Total Left], AVG(PPU.vPPUBase.MeasureNum / PPU.vPPUBase.MeasureDen) AS [%
    Compl], MAX(PPU.vPPUBase.MeasureTarget) AS [Regional Target],
    PPU.tbl_Measure_Def.DisplayOrder, MAX(PPU.vPPUBase.YYYYMM) AS YYYYMM,
    AVG(PPU.vSpecSum.SA_Num / PPU.vSpecSum.SA_Den) AS [Spec Avg],
    PPU.vPPUBase.MeasureID FROM PPU.vPPUBase INNER JOIN PPU.tbl_Measure_Def ON
    PPU.vPPUBase.MeasureID = PPU.tbl_Measure_Def.MeasureID INNER JOIN
    PPU.vSpecSum ON PPU.tbl_Measure_Def.MeasureID = PPU.vSpecSum.MeasureID WHERE
    (PPU.vPPUBase.MeasureID IN (N'MAMMO', N'DM_LDL', N'CVD_LDL', N'COLO', N'PAP',
    N'HTN_BP', N'PcntCGClsd')) AND (PPU.vPPUBase.ProvID = @ProvID) GROUP BY
    PPU.vPPUBase.MeasureChartTitle, PPU.tbl_Measure_Def.DisplayOrder,
    PPU.vPPUBase.MeasureID ORDER BY PPU.tbl_Measure_Def.DisplayOrder">
    <SelectParameters>
    <asp:ControlParameter ControlID="cmbPCP"
    Name="ProvID" PropertyName="SelectedValue" />
    </SelectParameters>
    </asp:SqlDataSource>

    <asp:GridView ID="GridView3" runat="server"
    AutoGenerateColumns="False" DataSourceID="sdsQuality" Style="font-size:
    x-small; color: black; font-family: 'Century Gothic'"
    Width="470px" BorderStyle="Solid"
    GridLines="Horizontal">
    <Columns>
    <asp:BoundField DataField="Measure"
    HeaderText="Measure" SortExpression="Measure">
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:ButtonField DataTextField="Missed
    Opp" HeaderText="Missed Opp" SortExpression="Missed Opp" >
    <HeaderStyle
    HorizontalAlign="Center" />
    <ItemStyle HorizontalAlign="Center" />
    </asp:ButtonField>
    <asp:ButtonField DataTextField="Total
    Left" HeaderText="Total Left" SortExpression="MeasureID"
    Text="Button" >
    <HeaderStyle
    HorizontalAlign="Center" />
    <ItemStyle HorizontalAlign="Center" />
    </asp:ButtonField>
    <asp:BoundField DataField="% Compl"
    DataFormatString="{0:#%}" HeaderText="% Compl"
    SortExpression="% Compl"
    HtmlEncode="False">
    <HeaderStyle
    HorizontalAlign="Center" />
    <ItemStyle HorizontalAlign="Center" />
    </asp:BoundField>
    <asp:TemplateField HeaderText="Spec Avg"
    SortExpression="Spec Avg">
    <EditItemTemplate>
    <asp:TextBox ID="TextBox1"
    runat="server" Text='<%# Bind("[Spec Avg]") %>'></asp:TextBox>
    </EditItemTemplate>
    <ItemTemplate>
    <asp:Label ID="Label1"
    runat="server" Text='<%# Bind("[Spec Avg]", "{0:#%}") %>'
    Width="56px"></asp:Label>
    </ItemTemplate>
    <HeaderStyle
    HorizontalAlign="Center" />
    <ItemStyle HorizontalAlign="Center" />
    </asp:TemplateField>
    <asp:BoundField DataField="Regional
    Target" DataFormatString="{0:#%}" HeaderText="Regional Target"
    SortExpression="Regional Target"
    HtmlEncode="False">
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    </Columns>
    </asp:GridView>
    </td>
    </tr>
    </table>
    <br />
    <asp:panel ID="pnlQuality" runat="server" CssClass="modalPopup"
    Style="display: none" Height="506px"
    Width="971px">
    <table style="width: 965px; height: 158px">
    <tr>
    <td style="width: 100px; height: 3px" valign="top">

    <asp:Button ID="btnCloseHedis" runat="server"
    Text="Close" />
    </td>
    </tr>
    <tr>
    <td style="width: 100px; height: 421px" valign="top">

    <asp:UpdatePanel ID="upHedis" runat="server">
    <ContentTemplate>
    <asp:GridView ID="gvHedis" runat="server"
    AllowPaging="True" AllowSorting="True"
    AutoGenerateColumns="False" BackColor="White"
    BorderColor="#E7E7FF" BorderStyle="None"
    BorderWidth="1px" CellPadding="3"
    DataSourceID="sdsHedis" GridLines="Horizontal"
    Width="951px" EmptyDataText="Instances may not be
    displayed if patient is UNLINKED">
    <FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C"
    />
    <RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" />
    <Columns>
    <asp:BoundField DataField="PT_MRN"
    HeaderText="PT_MRN" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="PT_NAME"
    HeaderText="PT_NAME" SortExpression="PT_NAME" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="CVD" HeaderText="CVD"
    SortExpression="CVD" HtmlEncode="False" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="DM" HeaderText="DM"
    SortExpression="DM" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="Mammography"
    HeaderText="Mammography" SortExpression="Mammography" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="HTN" HeaderText="HTN"
    SortExpression="HTN" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="Cervical"
    HeaderText="Cervical" SortExpression="Cervical" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="Colorectal"
    HeaderText="Colorectal" SortExpression="Colorectal" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    <asp:BoundField DataField="Rank"
    HeaderText="Rank" SortExpression="Rank" >
    <HeaderStyle HorizontalAlign="Left" />
    <ItemStyle HorizontalAlign="Left" />
    </asp:BoundField>
    </Columns>
    <PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C"
    HorizontalAlign="Right" />
    <SelectedRowStyle BackColor="#738A9C"
    Font-Bold="True" ForeColor="#F7F7F7" />
    <HeaderStyle BackColor="#4A3C8C" Font-Bold="True"
    ForeColor="#F7F7F7" />
    <AlternatingRowStyle BackColor="#F7F7F7" />
    </asp:GridView>
    </ContentTemplate>
    <Triggers>
    <asp:AsyncPostBackTrigger ControlID="gvHedis"
    EventName="PageIndexChanged" />
    <asp:AsyncPostBackTrigger ControlID="gvHedis"
    EventName="Sorting" />
    </Triggers>
    </asp:UpdatePanel>
    <asp:SqlDataSource ID="sdsHedis" runat="server"
    ConnectionString="<%$ ConnectionStrings:IMS_cn %>"
    SelectCommand="SELECT PT_MRN, PT_NAME, CVD, DM,
    Mammography, HTN, Cervical, Colorectal, Rank FROM PPU.tbl_lst_HEDIS WHERE
    (ProvID = @ProvID)">
    <SelectParameters>
    <asp:ControlParameter ControlID="cmbPCP"
    Name="ProvID" PropertyName="SelectedValue" />
    </SelectParameters>
    </asp:SqlDataSource>
     
    jonefer, Apr 18, 2008
    #1
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.