Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   .NET (https://www.clubdelphi.com/foros/forumdisplay.php?f=17)
-   -   Título columna en varias líneas (https://www.clubdelphi.com/foros/showthread.php?t=35334)

SMTZ 07-09-2006 14:54:17

Título columna en varias líneas
 
Hola, en un datagrid, ¿cómo puedo hacer que el título de una columna ocupe varias líneas (tengo una columna en el que el contenido son dos caracteres, pero el título es bastante largo y no me deja espacio para añadir más columnas sin hacer scroll)?

Gracias.

Casimiro Noteví 07-09-2006 15:17:01

Creo que aquí se trató el tema.

SMTZ 07-09-2006 15:34:42

Gracias
 
Gracias por la ayuda, pero yo lo necesito para .NET. Intento buscar la solución partiendo de la base de ese ejemplo.

Gracias.

SMTZ 07-09-2006 16:44:43

HE encontrado algo pero no va
 
Hola, buscando por el google he encontrado lo siguiente:

Código:


  DataGridTextBoxColumn1.TextBox.Multiline := True;
  DataGridTextBoxColumn1.TextBox.WordWrap := True;

pero, tras probarlo, el control sigue igual.

En el datagrid, me ha llamado la atención de que existe la propiedad RowHeaderWidh pero no la RowHeaderHeight.

Sigo buscando...

__hector 07-09-2006 19:50:12

El datagrid, cuando renderiza el control, escribe puro html, por lo que si incluyes los saltos manualmente (con <br />) en el titulo del header de la columna, debe hacer los saltos que deseas.

SMTZ 07-09-2006 20:37:34

No funcionó
 
Hola, gracias por la ayuda. No ha funcionado porque no estoy escribiendo una página WEB sino un formulario de Windows, aunque, igualmente, lo he probado.

A parte del "br", he probado el carácter intro (#13), pero no ha funcionado. Ya no se me ocurren más cosas.

Código:

  procedure PrincipalWinForm.InitializeComponent; 
  Begin

    Self.DataGridTableStyle1 := System.Windows.Forms.DataGridTableStyle.Create;
 
    Self.DataGridTextBoxColumn1 := System.Windows.Forms.DataGridTextBoxColumn.Create;
    Self.DataGridTextBoxColumn2 := System.Windows.Forms.DataGridTextBoxColumn.Create;
    Self.DataGridTextBoxColumn3 := System.Windows.Forms.DataGridTextBoxColumn.Create;
    Self.DataGridTextBoxColumn4 := System.Windows.Forms.DataGridTextBoxColumn.Create;
    Self.DataGridTextBoxColumn5 := System.Windows.Forms.DataGridTextBoxColumn.Create;
    Self.DataGridTextBoxColumn6 := System.Windows.Forms.DataGridTextBoxColumn.Create;
    Self.DataGridTableStyle1.GridColumnStyles.AddRange(TArrayOfSystem_Windows_Forms_DataGridColumnStyle.Create(Self.DataGridTextBoxColumn1,
    Self.DataGridTextBoxColumn2, Self.DataGridTextBoxColumn3, Self.DataGridTextBoxColumn4,
          Self.DataGridTextBoxColumn5, Self.DataGridTextBoxColumn6));

    Self.DataGridTextBoxColumn6.TextBox.Multiline := True;
    Self.DataGridTextBoxColumn6.TextBox.WordWrap := True;
    Self.DataGridTextBoxColumn6.HeaderText := 'Linea1 ' + #13 + 'Linea2';


  End;

Gracias igualmente.

SMTZ 07-09-2006 20:46:39

Se me olvidaba
 
Hola, se me olvidaba decir que también había probado esto:

Código:

  Self.DataGridTextBoxColumn6.TextBox.Bounds.X := 50;
  Self.DataGridTextBoxColumn6.TextBox.Bounds.Y := 1500;

pero sin éxito.


La franja horaria es GMT +2. Ahora son las 18:23:32.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi