2013-03-31 2 views
1

У меня есть gridview с ячейкой, которая будет показывать другое gridview в виде подсказки с данными, загружаемыми из DB, но он будет отображать gridview будет отображаться каждый раз при загрузке основного gridview. Я хотел бы, чтобы gridviewview всплывающей подсказки отображался только тогда, когда пользователь наводил курсор на ячейку.show tooltip only whn user mouseover ячейка gridview

Любая идея, как я могу сделать отображение сетки всплывающей подсказки отображаться только при наведении указателя мыши на метку ячейки?

<asp:GridView ID="gvINCpym" runat="server" AllowSorting="True" AutoGenerateColumns="False" 
       CaptionAlign="Left" CssClass="GridViewStyle" EmptyDataText="No Record Found" 
       GridLines="None" ShowFooter="True" Width="960px" 
       AllowPaging="True"> 
    <RowStyle CssClass="RowStyle" /> 
    <EmptyDataRowStyle CssClass="EmptyRowStyle" /> 
    <Columns> 
     <asp:TemplateField HeaderText="QB (30%)"> 
      <ItemTemplate> 
       <asp:Label ID="lblQB" runat="server" Text="<%# Bind('QB') %>"></asp:Label> 
       <cc1:HoverMenuExtender ID="HoverMenuExtender1" runat="server" TargetControlID="lblQB" 
        PopupControlID="pnlQBDet" PopupPosition="Right" OffsetX="0" OffsetY="0" 
        PopDelay="25"> 
       </cc1:HoverMenuExtender> 
       <asp:Panel ID="pnlQBDet" runat="server"> 
        <asp:GridView ID="gvQBDet" runat="server"> 
        </asp:GridView> 
       </asp:Panel> 
     </ItemTemplate> 
     <HeaderStyle CssClass="HeaderStyle" Width="80px" /> 
     <ItemStyle HorizontalAlign="Right" Width="80px" /> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

Private Sub gvINCpym_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvINCpym.RowDataBound 
Try 
    If (e.Row.RowType = DataControlRowType.DataRow) Then 
     Dim secondGrid As GridView = CType(e.Row.FindControl("gvQBDet"), GridView) 

     MsFg2.gvSql = 
      "SELECT SUBSTRING(CONVERT(VARCHAR(11), DATE1, 113), 4, 8) AS CalcMnth, AMT2 AS QB, AMT3 AS KB " & _ 
      "FROM dbo.Inc_Bonus_Tran NOLOCK " & _ 
      "WHERE (DATE2 BETWEEN '" & CVRMgr.getDateSQL(txtDtFrm.Text) & "' AND '" & CVRMgr.getDateSQL(txtDtTo.Text) & "') " & _ 
      "AND TYPE = 'INC' AND SUBTYPE = 'T2' " & _ 
      "AND STAFFID = '" & rowView("StfID") & "'" 


     MsFg2.CreateDataTable(DB, MsFg2.gvSql, cnnVLD, True, True) 
     Session(MsFg2Ses) = MsFg2.gvDataTable.DefaultView.ToTable 

     secondGrid.DataSource = Session(MsFg2Ses) 
     secondGrid.DataBind() 
    End If 
Catch ex As Exception 
    cMessageManagerAlertOnly.ErrorMsgAlert(ex.Message, Me.Page) 
End Try 
End Sub 

ответ

1

Удалось решить проблему. Вам нужно будет скрыть панель «pnlQBDet» с помощью CSS, чтобы gridviewview tooltip не отображался на странице load/postback.

<style type="text/css"> 
.PopupMenu 
{ 
    display: none; 
} 
</style>