1

フィールドテキストの短いバージョンを含む列を追加する必要があります。ユーザーがこのテキストの上にマウスを置くと、実際の大きなバージョンのツールチップが表示されるようにしたいと思います。セルが大きすぎるグリッドビューの歪みの解決策として、これは難しいです。他の解決策は大歓迎です。

<asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" 
            GridLines="None" AutoGenerateColumns="false">
            <Columns>
                <asp:BoundField DataField="DESC_CORTA" HeaderText="Sistema"  />
                <asp:BoundField DataField="ASIGNADO" HeaderText="Asignado"  />
                <asp:BoundField DataField="SOLICITANTE" HeaderText="Solicitante"  />
                <asp:BoundField DataField="FECHA_INGRESO" HeaderText="Fecha ingreso"  />
                <asp:BoundField DataField="N_SOLICITUD" HeaderText="N solicitud"  />
                <asp:BoundField DataField="TIEMPO_TOTAL" HeaderText="Tiempo total"  />
                <asp:BoundField DataField="TIEMPO_RESTANTE" HeaderText="Tiempo restante" />
                <asp:BoundField DataField="PORCENTAJE_RESTANTE" HeaderText="Porcentaje restante" />
                <asp:BoundField DataField="TIEMPO_ESPERADO" HeaderText="Tiempo esperado" />

HERE COMES THE BIG COLUMN
<asp:BoundField DataField="GLOSA_USUARIO" HeaderText="Glosa" />
            </Columns>
        </asp:GridView>
4

2 に答える 2

2

TemplateFieldを使用して、ツールチップを適用します。

変化する

<asp:BoundField DataField="GLOSA_USUARIO" HeaderText="Glosa" />

これに:

<asp:TemplateField HeaderText="Glosa">
    <ItemTemplate>
        <div title='<%# Eval("GLOSA_USUARIO") %>'>
            <%# Helpers.GeneratePreview(Eval("GLOSA_USUARIO").ToString(), 100) %></div>
    </ItemTemplate>
</asp:TemplateField>

「GeneratePreview」関数を使用したヘルパークラスは次のとおりです。

public static class Helpers
{
   public static string GeneratePreview(string Text, int Length)
   {
       if (Text.Length >= Length)
       {
           Text = Text.Remove(Length, Text.Length - Length);
           int CutLastSpace = Text.LastIndexOf(" ");
           Text = Text.Remove(CutLastSpace, Text.Length - CutLastSpace);
           Text = Text + "...";
       }

       return Text;
   }
}

必要に応じて、javascriptを使用してより洗練されたツールチップを取得できます。お役に立てれば!

幸運を!

于 2012-04-10T14:28:24.553 に答える
0

はい、彼らは正しいです。彼らが言ったように、テンプレートフィールドを使用する必要があります。派手なまたは優れた複数行のツールチップを表示するには、最適なツールチップを使用します(以下のリンク)

<asp:TemplateField HeaderText="Glosa">
  <ItemTemplate>
      <div title='<%# Eval("GLOSA_USUARIO") %>'>
          <%# Eval("GLOSA_USUARIO")%></div>
  </ItemTemplate>
</asp:TemplateField>

http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/ または http://craigsworks.com/projects/simpletip/

于 2012-04-10T14:35:52.067 に答える