What causes my rows to be all different heights whenever the data is uniform sized.
Also, look close to the bottom of the grid, second column. See how the data in that column is cut off, so you only see 1/2 the data.
Anyone else experience these issues.
14 Answers, 1 is accepted
Can I ask what version you are using? This looks very much like a series of AutoSize Rows issues that were fixed in the Q3 2010 / Q3 2010 SP 1 Releases.
Regards,
Richard
FIXED: Applying BestFitColumns when AutoSizeColumnsMode is set to Fill should respect the MinWidth values of the columns.
FIXED: When AutoSizeRows is enabled and one selects an item from the combo box, this combo box does not close its drop down.
FIXED: Rows overlap each other row when combo box is opened and AutoSizeRows is enabled.
FIXED: Row height is not updated when entering edit mode and AutoSizeRows is enabled.
the full release notes can be found here
look forward to hearing back from you
Richard
Using Q3 SP1 (the one with 1215 as the last version number)
Please could you post an exmaple that replicates this, or let me know the settings that you are using for the grids. E.g. AutoSizeRows, AutoSizeColumnsMode, DisableHtmlFormatting etc..
I'll be happy to ry and replicate it for you.
Regards,
Richard
The nearest I could get to replicating your issue is is I leave out the BeginUpdate() /EndUpdate() out of the following (full exmaple below)
Form1.vb
Imports Telerik.WinControls Imports Telerik.WinControls.UI Imports System.ComponentModel Imports Telerik.WinControls.Data Public Class Form1 Private m_Description As String = "<html>Lorem ipsum dolor sit amet, consectetur adipisicing elit,<br>" & _ "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<br> " & _ "enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.<br>" & _ "Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.<br> " & _ "Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum" Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.RadGridView1.AutoGenerateColumns = True Me.RadGridView1.AutoSizeRows = True Me.RadGridView1.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill Dim t As New DataTable() t.Columns.Add("A Column Name") t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) t.Rows.Add(m_Description) Me.RadGridView1.BeginUpdate() Me.RadGridView1.DataSource = t Me.RadGridView1.Columns(0).DisableHTMLRendering = False Me.RadGridView1.EndUpdate() End Sub End ClassForm1.Designer
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ Partial Class Form1 Inherits System.Windows.Forms.Form 'Form overrides dispose to clean up the component list. <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overrides Sub Dispose(ByVal disposing As Boolean) Try If disposing AndAlso components IsNot Nothing Then components.Dispose() End If Finally MyBase.Dispose(disposing) End Try End Sub 'Required by the Windows Form Designer Private components As System.ComponentModel.IContainer 'NOTE: The following procedure is required by the Windows Form Designer 'It can be modified using the Windows Form Designer. 'Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() Me.RadGridView1 = New Telerik.WinControls.UI.RadGridView() Me.BindingSource1 = New System.Windows.Forms.BindingSource(Me.components) CType(Me.RadGridView1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'RadGridView1 ' Me.RadGridView1.Dock = System.Windows.Forms.DockStyle.Fill Me.RadGridView1.EnableHotTracking = False Me.RadGridView1.Location = New System.Drawing.Point(0, 0) ' 'RadGridView1 ' Me.RadGridView1.MasterTemplate.EnableFiltering = True Me.RadGridView1.MasterTemplate.EnableSorting = False Me.RadGridView1.Name = "RadGridView1" Me.RadGridView1.ShowGroupPanel = False Me.RadGridView1.Size = New System.Drawing.Size(418, 372) Me.RadGridView1.TabIndex = 0 Me.RadGridView1.Text = "RadGridView1" Me.RadGridView1.UseCompatibleTextRendering = False ' 'Form1 ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(418, 372) Me.Controls.Add(Me.RadGridView1) Me.Name = "Form1" Me.Text = "Form1" CType(Me.RadGridView1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) End Sub Friend WithEvents RadGridView1 As Telerik.WinControls.UI.RadGridView Friend WithEvents BindingSource1 As System.Windows.Forms.BindingSource End ClassI'd suggest ensuring your updates to the grids are wrapped with
Me.RadGridView1.BeginUpdate() '// Me.RadGridView1.EndUpdate()Let me know if you have further issues
Richard
Okay just realised I'm not supposed to attach solutions to this anyway, so here's the code:
Form.vb
Imports ScottishParliament.CPI.Facade Imports Telerik.WinControls.UI Imports System.Text Public Class GenericItemListForm Public Property FormViewType As FormViewType Public EventList As BaseItems Public Sub New(ByVal Style As FormViewType) ' This call is required by the designer. InitializeComponent() FormViewType = Style EventList = Nothing rgvPendingItems.AutoSizeRows = True CType(rgvPendingItems.TableElement, GridTableElement).AlternatingRowColor = Color.PapayaWhip Dim view As New HtmlViewDefinition view.RowTemplate.ReadXml("ViewDefinition.xml") rgvPendingItems.ViewDefinition = view RefreshView() End Sub Public Sub RefreshView() 'Temp for test data Dim fileContents As String fileContents = My.Computer.FileSystem.ReadAllText("objectdata.txt") EventList = DeserializeObject(fileContents, New BaseItems) 'End rgvPendingItems.BeginUpdate() If EventList IsNot Nothing Then BaseItemsBindingSource.DataSource = EventList End If rgvPendingItems.EndUpdate() End Sub End ClassForm.Designer.vb
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ Partial Class GenericItemListForm Inherits System.Windows.Forms.Form 'Form overrides dispose to clean up the component list. <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overrides Sub Dispose(ByVal disposing As Boolean) Try If disposing AndAlso components IsNot Nothing Then components.Dispose() End If Finally MyBase.Dispose(disposing) End Try End Sub 'Required by the Windows Form Designer Private components As System.ComponentModel.IContainer 'NOTE: The following procedure is required by the Windows Form Designer 'It can be modified using the Windows Form Designer. 'Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() Dim GridViewCheckBoxColumn1 As Telerik.WinControls.UI.GridViewCheckBoxColumn = New Telerik.WinControls.UI.GridViewCheckBoxColumn() Dim GridViewTextBoxColumn1 As Telerik.WinControls.UI.GridViewTextBoxColumn = New Telerik.WinControls.UI.GridViewTextBoxColumn() Dim GridViewTextBoxColumn2 As Telerik.WinControls.UI.GridViewTextBoxColumn = New Telerik.WinControls.UI.GridViewTextBoxColumn() Dim GridViewDateTimeColumn1 As Telerik.WinControls.UI.GridViewDateTimeColumn = New Telerik.WinControls.UI.GridViewDateTimeColumn() Dim GridViewTextBoxColumn3 As Telerik.WinControls.UI.GridViewTextBoxColumn = New Telerik.WinControls.UI.GridViewTextBoxColumn() Dim GridViewTextBoxColumn4 As Telerik.WinControls.UI.GridViewTextBoxColumn = New Telerik.WinControls.UI.GridViewTextBoxColumn() Dim GridViewTextBoxColumn5 As Telerik.WinControls.UI.GridViewTextBoxColumn = New Telerik.WinControls.UI.GridViewTextBoxColumn() Dim GridViewTextBoxColumn6 As Telerik.WinControls.UI.GridViewTextBoxColumn = New Telerik.WinControls.UI.GridViewTextBoxColumn() Dim SortDescriptor1 As Telerik.WinControls.Data.SortDescriptor = New Telerik.WinControls.Data.SortDescriptor() Me.rgvPendingItems = New Telerik.WinControls.UI.RadGridView() Me.BaseItemsBindingSource = New System.Windows.Forms.BindingSource(Me.components) CType(Me.rgvPendingItems, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.BaseItemsBindingSource, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'rgvPendingItems ' Me.rgvPendingItems.AutoSize = True Me.rgvPendingItems.BackColor = System.Drawing.SystemColors.Control Me.rgvPendingItems.Cursor = System.Windows.Forms.Cursors.Default Me.rgvPendingItems.Dock = System.Windows.Forms.DockStyle.Fill Me.rgvPendingItems.Font = New System.Drawing.Font("Segoe UI", 8.25!) Me.rgvPendingItems.ForeColor = System.Drawing.SystemColors.ControlText Me.rgvPendingItems.ImeMode = System.Windows.Forms.ImeMode.NoControl Me.rgvPendingItems.Location = New System.Drawing.Point(0, 0) ' 'rgvPendingItems ' Me.rgvPendingItems.MasterTemplate.AllowAddNewRow = False Me.rgvPendingItems.MasterTemplate.AllowColumnChooser = False GridViewCheckBoxColumn1.AllowGroup = False GridViewCheckBoxColumn1.AllowResize = False GridViewCheckBoxColumn1.AllowSort = False GridViewCheckBoxColumn1.HeaderText = "Select" GridViewCheckBoxColumn1.MinWidth = 20 GridViewCheckBoxColumn1.Name = "SelectColumn" GridViewCheckBoxColumn1.VisibleInColumnChooser = False GridViewTextBoxColumn1.FieldName = "UniqueID" GridViewTextBoxColumn1.HeaderText = "UniqueID" GridViewTextBoxColumn1.IsAutoGenerated = True GridViewTextBoxColumn1.IsVisible = False GridViewTextBoxColumn1.Name = "UniqueID" GridViewTextBoxColumn1.Width = 120 GridViewTextBoxColumn2.FieldName = "EventID" GridViewTextBoxColumn2.HeaderText = "Item Number" GridViewTextBoxColumn2.IsAutoGenerated = True GridViewTextBoxColumn2.Name = "EventID" GridViewTextBoxColumn2.ReadOnly = True GridViewTextBoxColumn2.Width = 123 GridViewDateTimeColumn1.CustomFormat = "dd/MM/yyyy HH:mm" GridViewDateTimeColumn1.FieldName = "DateStamp" GridViewDateTimeColumn1.Format = System.Windows.Forms.DateTimePickerFormat.Custom GridViewDateTimeColumn1.FormatInfo = New System.Globalization.CultureInfo("en-GB") GridViewDateTimeColumn1.HeaderText = "Date and Time" GridViewDateTimeColumn1.Name = "DateStamp" GridViewDateTimeColumn1.ReadOnly = True GridViewDateTimeColumn1.Width = 114 GridViewTextBoxColumn3.FieldName = "EventSubTypeString" GridViewTextBoxColumn3.HeaderText = "Type" GridViewTextBoxColumn3.Name = "EventTypeString" GridViewTextBoxColumn3.ReadOnly = True GridViewTextBoxColumn3.Width = 146 GridViewTextBoxColumn4.DisableHTMLRendering = False GridViewTextBoxColumn4.FieldName = "DisplayText" GridViewTextBoxColumn4.HeaderText = "Text" GridViewTextBoxColumn4.Multiline = True GridViewTextBoxColumn4.Name = "TitleColumn" GridViewTextBoxColumn4.ReadOnly = True GridViewTextBoxColumn4.RowSpan = 40 GridViewTextBoxColumn4.Width = 162 GridViewTextBoxColumn4.WrapText = True GridViewTextBoxColumn5.FieldName = "MSPName" GridViewTextBoxColumn5.HeaderText = "MSP" GridViewTextBoxColumn5.Name = "MSPName" GridViewTextBoxColumn5.ReadOnly = True GridViewTextBoxColumn5.Width = 119 GridViewTextBoxColumn6.FieldName = "MSPParty" GridViewTextBoxColumn6.HeaderText = "Party" GridViewTextBoxColumn6.Name = "Party" GridViewTextBoxColumn6.ReadOnly = True GridViewTextBoxColumn6.Width = 166 Me.rgvPendingItems.MasterTemplate.Columns.AddRange(New Telerik.WinControls.UI.GridViewDataColumn() {GridViewCheckBoxColumn1, GridViewTextBoxColumn1, GridViewTextBoxColumn2, GridViewDateTimeColumn1, GridViewTextBoxColumn3, GridViewTextBoxColumn4, GridViewTextBoxColumn5, GridViewTextBoxColumn6}) Me.rgvPendingItems.MasterTemplate.DataSource = Me.BaseItemsBindingSource Me.rgvPendingItems.MasterTemplate.EnableAlternatingRowColor = True Me.rgvPendingItems.MasterTemplate.ShowRowHeaderColumn = False SortDescriptor1.Direction = System.ComponentModel.ListSortDirection.Descending SortDescriptor1.PropertyName = "DateStamp" Me.rgvPendingItems.MasterTemplate.SortDescriptors.AddRange(New Telerik.WinControls.Data.SortDescriptor() {SortDescriptor1}) Me.rgvPendingItems.Name = "rgvPendingItems" Me.rgvPendingItems.Padding = New System.Windows.Forms.Padding(0, 0, 0, 1) Me.rgvPendingItems.RightToLeft = System.Windows.Forms.RightToLeft.No ' ' ' Me.rgvPendingItems.RootElement.Padding = New System.Windows.Forms.Padding(0, 0, 0, 1) Me.rgvPendingItems.RootElement.StretchHorizontally = False Me.rgvPendingItems.RootElement.StretchVertically = False Me.rgvPendingItems.Size = New System.Drawing.Size(876, 52) Me.rgvPendingItems.TabIndex = 0 Me.rgvPendingItems.Text = "RadGridView1" ' 'BaseItemsBindingSource ' Me.BaseItemsBindingSource.DataSource = GetType(ScottishParliament.CPI.Facade.BaseItems) ' 'GenericItemListForm ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(874, 271) Me.Controls.Add(Me.rgvPendingItems) Me.Name = "GenericItemListForm" Me.Text = "PendingItems" CType(Me.rgvPendingItems, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.BaseItemsBindingSource, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() End Sub Friend WithEvents rgvPendingItems As Telerik.WinControls.UI.RadGridView Friend WithEvents BaseItemsBindingSource As System.Windows.Forms.BindingSource End ClassViewdefinition.xml
<table> <tr> <td >SelectColumn</td> <td>ItemNumber</td> <td>DateStamp</td> <td>EventTypeString</td> <td>MSPName</td> <td>Party</td> </tr> <tr> <td colspan="6">TitleColumn</td> </tr> </table>Obviously there's data objects etc. too, but ultimately the "TitleColumn" is being populated by straigh up text. Cheers!
I'm afraid I still haven't been able to replicate your issue. I have taken your sample and got that working with some data from a list of custom objects. The exmaple is below. Please can you run this and let me know if it looks ok to you.
Designer (modified)
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ Partial Class GenericItemListForm Inherits System.Windows.Forms.Form 'Form overrides dispose to clean up the component list. <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overrides Sub Dispose(ByVal disposing As Boolean) Try If disposing AndAlso components IsNot Nothing Then components.Dispose() End If Finally MyBase.Dispose(disposing) End Try End Sub 'Required by the Windows Form Designer Private components As System.ComponentModel.IContainer 'NOTE: The following procedure is required by the Windows Form Designer 'It can be modified using the Windows Form Designer. 'Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Dim SortDescriptor1 As Telerik.WinControls.Data.SortDescriptor = New Telerik.WinControls.Data.SortDescriptor() Me.rgvPendingItems = New Telerik.WinControls.UI.RadGridView() CType(Me.rgvPendingItems, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'rgvPendingItems ' Me.rgvPendingItems.BackColor = System.Drawing.SystemColors.Control Me.rgvPendingItems.Cursor = System.Windows.Forms.Cursors.Default Me.rgvPendingItems.Dock = System.Windows.Forms.DockStyle.Fill Me.rgvPendingItems.Font = New System.Drawing.Font("Segoe UI", 8.25!) Me.rgvPendingItems.ForeColor = System.Drawing.SystemColors.ControlText Me.rgvPendingItems.ImeMode = System.Windows.Forms.ImeMode.NoControl Me.rgvPendingItems.Location = New System.Drawing.Point(0, 0) ' 'rgvPendingItems ' Me.rgvPendingItems.MasterTemplate.EnableAlternatingRowColor = True Me.rgvPendingItems.MasterTemplate.ShowRowHeaderColumn = False SortDescriptor1.Direction = System.ComponentModel.ListSortDirection.Descending SortDescriptor1.PropertyName = "DateStamp" Me.rgvPendingItems.MasterTemplate.SortDescriptors.AddRange(New Telerik.WinControls.Data.SortDescriptor() {SortDescriptor1}) Me.rgvPendingItems.Name = "rgvPendingItems" Me.rgvPendingItems.Padding = New System.Windows.Forms.Padding(0, 0, 0, 1) Me.rgvPendingItems.RightToLeft = System.Windows.Forms.RightToLeft.No ' ' ' Me.rgvPendingItems.RootElement.Padding = New System.Windows.Forms.Padding(0, 0, 0, 1) Me.rgvPendingItems.Size = New System.Drawing.Size(874, 410) Me.rgvPendingItems.TabIndex = 0 Me.rgvPendingItems.Text = "RadGridView1" ' 'GenericItemListForm ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(874, 410) Me.Controls.Add(Me.rgvPendingItems) Me.Name = "GenericItemListForm" Me.Text = "PendingItems" CType(Me.rgvPendingItems, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) End Sub Friend WithEvents rgvPendingItems As Telerik.WinControls.UI.RadGridView 'Friend WithEvents BaseItemsBindingSource As System.Windows.Forms.BindingSource End ClassForm1.vb
Imports Telerik.WinControls.UI Imports System.Text Public Class GenericItemListForm Public Sub New() InitializeComponent() rgvPendingItems.AutoSizeRows = True rgvPendingItems.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill rgvPendingItems.AutoGenerateColumns = True CType(rgvPendingItems.TableElement, GridTableElement).AlternatingRowColor = Color.PapayaWhip Dim view As New HtmlViewDefinition view.RowTemplate.ReadXml("ViewDefinition.xml") rgvPendingItems.ViewDefinition = view Dim myList As New List(Of MyObject) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) myList.Add(New MyObject("Select", "Unique", "EventId", Now, "Event Type", "Some longer text in the title column Some longer text in the title column", "MSP Name", "Party")) Me.rgvPendingItems.DataSource = myList End Sub End Class Public Class MyObject Public Sub New(ByVal SelectColumn As String, ByVal UniqueId As String, ByVal EventId As String, ByVal DateStamp As Date, ByVal EventType As String, ByVal TitleColumn As String, ByVal MSPName As String, ByVal Party As String) Me.SelectColumn = SelectColumn Me.UniqueID = UniqueId Me.EventID = EventId Me.DateStamp = DateStamp Me.EventTypeString = EventType Me.TitleColumn = TitleColumn Me.MSPName = MSPName Me.Party = Party End Sub Public Property SelectColumn As String Public Property UniqueID As String Public Property EventID As String Public Property DateStamp As Date Public Property EventTypeString As String Public Property TitleColumn As String Public Property MSPName As String Public Property Party As String End ClassAttached is a screenshot of how it looks on mine
Regards,
Richard
Back to the problem: That seems to work okay but if I make the data really long in the problem column then it's not wrapping or going multi-line. So I added a line of code in at the end to make it wrap the text:
rgvPendingItems.Columns("TitleColumn").WrapText = TrueThat then results in what I've attached.
Infuriating as we're so close!
It looks as though this is actually a known issue. Please have a look at these two PITS links
http://www.telerik.com/support/pits.aspx#/public/winforms/2591
http://www.telerik.com/support/pits.aspx#/public/winforms/4674
If there's anything else I can do to help, please let me know
Regards,
Richard
With Autosizerows=false the user can resize the row on their own to see the full contents of the cell, but I would rather have it done automatically for them.
As a temporary workaround I have just sent an initial height on the cell that will show most of the contents and if they need to see more they can do a manually resize.
Form1.designer.cs
namespace TelerikPlaygroundWindows{ partial class Form1 { /// <summary> /// Required designer variable. /// </summary> private System.ComponentModel.IContainer components; /// <summary> /// Clean up any resources being used. /// </summary> /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn1 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn2 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewDateTimeColumn gridViewDateTimeColumn1 = new Telerik.WinControls.UI.GridViewDateTimeColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn3 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewComboBoxColumn gridViewComboBoxColumn1 = new Telerik.WinControls.UI.GridViewComboBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn4 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewMaskBoxColumn gridViewMaskBoxColumn1 = new Telerik.WinControls.UI.GridViewMaskBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn5 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewMaskBoxColumn gridViewMaskBoxColumn2 = new Telerik.WinControls.UI.GridViewMaskBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn6 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn7 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn8 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn9 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); Telerik.WinControls.UI.GridViewTextBoxColumn gridViewTextBoxColumn10 = new Telerik.WinControls.UI.GridViewTextBoxColumn(); this.RadGridView1 = new Telerik.WinControls.UI.RadGridView(); ((System.ComponentModel.ISupportInitialize)(this.RadGridView1)).BeginInit(); this.SuspendLayout(); // // RadGridView1 // this.RadGridView1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(233)))), ((int)(((byte)(240)))), ((int)(((byte)(249))))); this.RadGridView1.Cursor = System.Windows.Forms.Cursors.Default; this.RadGridView1.Dock = System.Windows.Forms.DockStyle.Fill; this.RadGridView1.Font = new System.Drawing.Font("Segoe UI", 8.25F); this.RadGridView1.ForeColor = System.Drawing.Color.Black; this.RadGridView1.ImeMode = System.Windows.Forms.ImeMode.NoControl; this.RadGridView1.Location = new System.Drawing.Point(0, 0); this.RadGridView1.Margin = new System.Windows.Forms.Padding(4); // // RadGridView1 // this.RadGridView1.MasterTemplate.AllowAddNewRow = false; this.RadGridView1.MasterTemplate.AllowCellContextMenu = false; this.RadGridView1.MasterTemplate.AllowColumnChooser = false; this.RadGridView1.MasterTemplate.AllowColumnHeaderContextMenu = false; this.RadGridView1.MasterTemplate.AllowColumnReorder = false; this.RadGridView1.MasterTemplate.AllowColumnResize = false; this.RadGridView1.MasterTemplate.AllowDragToGroup = false; this.RadGridView1.MasterTemplate.AllowEditRow = false; this.RadGridView1.MasterTemplate.AutoGenerateColumns = false; this.RadGridView1.MasterTemplate.AutoSizeColumnsMode = Telerik.WinControls.UI.GridViewAutoSizeColumnsMode.Fill; gridViewTextBoxColumn1.AutoEllipsis = false; gridViewTextBoxColumn1.FieldName = "Medicalsummarydetailid"; gridViewTextBoxColumn1.FormatInfo = new System.Globalization.CultureInfo(""); gridViewTextBoxColumn1.HeaderText = "Medical Summary Detail Id"; gridViewTextBoxColumn1.IsVisible = false; gridViewTextBoxColumn1.Name = "Medicalsummarydetailid"; gridViewTextBoxColumn1.ReadOnly = true; gridViewTextBoxColumn1.VisibleInColumnChooser = false; gridViewTextBoxColumn2.AllowFiltering = false; gridViewTextBoxColumn2.AllowGroup = false; gridViewTextBoxColumn2.AllowHide = false; gridViewTextBoxColumn2.AllowResize = false; gridViewTextBoxColumn2.AllowSort = false; gridViewTextBoxColumn2.AutoEllipsis = false; gridViewTextBoxColumn2.DisableHTMLRendering = false; gridViewTextBoxColumn2.FieldName = "Datelabel"; gridViewTextBoxColumn2.FormatString = ""; gridViewTextBoxColumn2.HeaderText = "Datelabel"; gridViewTextBoxColumn2.Name = "Datelabel"; gridViewTextBoxColumn2.ReadOnly = true; gridViewTextBoxColumn2.VisibleInColumnChooser = false; gridViewDateTimeColumn1.FieldName = "Eventdate"; gridViewDateTimeColumn1.FormatString = "{0:MM/dd/yyyy}"; gridViewDateTimeColumn1.HeaderText = "Date"; gridViewDateTimeColumn1.Name = "Eventdate"; gridViewDateTimeColumn1.Width = 5; gridViewTextBoxColumn3.AllowFiltering = false; gridViewTextBoxColumn3.AllowGroup = false; gridViewTextBoxColumn3.AllowHide = false; gridViewTextBoxColumn3.AllowResize = false; gridViewTextBoxColumn3.AllowSort = false; gridViewTextBoxColumn3.AutoEllipsis = false; gridViewTextBoxColumn3.DisableHTMLRendering = false; gridViewTextBoxColumn3.FieldName = "Categorylabel"; gridViewTextBoxColumn3.FormatString = ""; gridViewTextBoxColumn3.HeaderText = "Categorylabel"; gridViewTextBoxColumn3.Name = "Categorylabel"; gridViewTextBoxColumn3.ReadOnly = true; gridViewTextBoxColumn3.VisibleInColumnChooser = false; gridViewComboBoxColumn1.AllowGroup = false; gridViewComboBoxColumn1.AllowHide = false; gridViewComboBoxColumn1.AutoEllipsis = false; gridViewComboBoxColumn1.DisableHTMLRendering = false; gridViewComboBoxColumn1.DisplayMember = "text"; gridViewComboBoxColumn1.FieldName = "Categoryname"; gridViewComboBoxColumn1.FormatInfo = new System.Globalization.CultureInfo(""); gridViewComboBoxColumn1.FormatString = ""; gridViewComboBoxColumn1.HeaderText = "Category"; gridViewComboBoxColumn1.Name = "Categoryname"; gridViewComboBoxColumn1.ValueMember = "value"; gridViewComboBoxColumn1.Width = 5; gridViewTextBoxColumn4.AllowFiltering = false; gridViewTextBoxColumn4.AllowGroup = false; gridViewTextBoxColumn4.AllowHide = false; gridViewTextBoxColumn4.AllowResize = false; gridViewTextBoxColumn4.AllowSort = false; gridViewTextBoxColumn4.AutoEllipsis = false; gridViewTextBoxColumn4.DisableHTMLRendering = false; gridViewTextBoxColumn4.FieldName = "Pagestartlabel"; gridViewTextBoxColumn4.FormatString = ""; gridViewTextBoxColumn4.HeaderText = "Pagestartlabel"; gridViewTextBoxColumn4.Name = "Pagestartlabel"; gridViewTextBoxColumn4.ReadOnly = true; gridViewTextBoxColumn4.VisibleInColumnChooser = false; gridViewMaskBoxColumn1.AllowGroup = false; gridViewMaskBoxColumn1.AllowHide = false; gridViewMaskBoxColumn1.AutoEllipsis = false; gridViewMaskBoxColumn1.DisableHTMLRendering = false; gridViewMaskBoxColumn1.FieldName = "Pagenumberstart"; gridViewMaskBoxColumn1.FormatInfo = new System.Globalization.CultureInfo(""); gridViewMaskBoxColumn1.FormatString = ""; gridViewMaskBoxColumn1.HeaderText = "Start"; gridViewMaskBoxColumn1.MaskType = Telerik.WinControls.UI.MaskType.Numeric; gridViewMaskBoxColumn1.Name = "Pagenumberstart"; gridViewMaskBoxColumn1.Width = 5; gridViewTextBoxColumn5.FieldName = "Pageendlabel"; gridViewTextBoxColumn5.FormatString = ""; gridViewTextBoxColumn5.HeaderText = "Pageendlabel"; gridViewTextBoxColumn5.Name = "Pageendlabel"; gridViewTextBoxColumn5.Width = 5; gridViewMaskBoxColumn2.FieldName = "Pagenumberend"; gridViewMaskBoxColumn2.FormatString = ""; gridViewMaskBoxColumn2.HeaderText = "End"; gridViewMaskBoxColumn2.Name = "Pagenumberend"; gridViewMaskBoxColumn2.Width = 5; gridViewTextBoxColumn6.AllowFiltering = false; gridViewTextBoxColumn6.AllowGroup = false; gridViewTextBoxColumn6.AllowHide = false; gridViewTextBoxColumn6.AllowResize = false; gridViewTextBoxColumn6.AllowSort = false; gridViewTextBoxColumn6.AutoEllipsis = false; gridViewTextBoxColumn6.DisableHTMLRendering = false; gridViewTextBoxColumn6.FieldName = "Notelabel"; gridViewTextBoxColumn6.FormatString = ""; gridViewTextBoxColumn6.HeaderText = "Notelabel"; gridViewTextBoxColumn6.Name = "Notelabel"; gridViewTextBoxColumn6.ReadOnly = true; gridViewTextBoxColumn6.VisibleInColumnChooser = false; gridViewTextBoxColumn7.AllowGroup = false; gridViewTextBoxColumn7.AllowHide = false; gridViewTextBoxColumn7.DisableHTMLRendering = false; gridViewTextBoxColumn7.FieldName = "Notes"; gridViewTextBoxColumn7.FormatInfo = new System.Globalization.CultureInfo(""); gridViewTextBoxColumn7.FormatString = ""; gridViewTextBoxColumn7.HeaderText = "Note"; gridViewTextBoxColumn7.MaxLength = 4000; gridViewTextBoxColumn7.Multiline = true; gridViewTextBoxColumn7.Name = "Notes"; gridViewTextBoxColumn7.Width = 5; gridViewTextBoxColumn7.WrapText = true; gridViewTextBoxColumn8.AllowFiltering = false; gridViewTextBoxColumn8.AllowGroup = false; gridViewTextBoxColumn8.AllowHide = false; gridViewTextBoxColumn8.AllowResize = false; gridViewTextBoxColumn8.AllowSort = false; gridViewTextBoxColumn8.AutoEllipsis = false; gridViewTextBoxColumn8.DisableHTMLRendering = false; gridViewTextBoxColumn8.FieldName = "Appraisallabel"; gridViewTextBoxColumn8.FormatString = ""; gridViewTextBoxColumn8.HeaderText = "Appraisallabel"; gridViewTextBoxColumn8.Name = "Appraisallabel"; gridViewTextBoxColumn8.ReadOnly = true; gridViewTextBoxColumn8.VisibleInColumnChooser = false; gridViewTextBoxColumn9.FieldName = "Appraisalyn"; gridViewTextBoxColumn9.FormatString = ""; gridViewTextBoxColumn9.HeaderText = "Appraisal"; gridViewTextBoxColumn9.Name = "Appraisalyn"; gridViewTextBoxColumn9.Width = 5; gridViewTextBoxColumn10.FieldName = "Categoryid"; gridViewTextBoxColumn10.HeaderText = "Categoryid"; gridViewTextBoxColumn10.IsVisible = false; gridViewTextBoxColumn10.Name = "Categoryid"; this.RadGridView1.MasterTemplate.Columns.AddRange(new Telerik.WinControls.UI.GridViewDataColumn[] { gridViewTextBoxColumn1, gridViewTextBoxColumn2, gridViewDateTimeColumn1, gridViewTextBoxColumn3, gridViewComboBoxColumn1, gridViewTextBoxColumn4, gridViewMaskBoxColumn1, gridViewTextBoxColumn5, gridViewMaskBoxColumn2, gridViewTextBoxColumn6, gridViewTextBoxColumn7, gridViewTextBoxColumn8, gridViewTextBoxColumn9, gridViewTextBoxColumn10}); this.RadGridView1.MasterTemplate.EnableAlternatingRowColor = true; this.RadGridView1.MasterTemplate.EnableFiltering = true; this.RadGridView1.MasterTemplate.EnableGrouping = false; this.RadGridView1.MasterTemplate.ShowColumnHeaders = false; this.RadGridView1.MasterTemplate.ShowFilteringRow = false; this.RadGridView1.Name = "RadGridView1"; this.RadGridView1.Padding = new System.Windows.Forms.Padding(0, 0, 0, 1); this.RadGridView1.RightToLeft = System.Windows.Forms.RightToLeft.No; // // // this.RadGridView1.RootElement.Padding = new System.Windows.Forms.Padding(0, 0, 0, 1); this.RadGridView1.ShowGroupPanel = false; this.RadGridView1.Size = new System.Drawing.Size(1153, 687); this.RadGridView1.TabIndex = 4; this.RadGridView1.Text = "rgvNotes"; // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(1153, 687); this.Controls.Add(this.RadGridView1); this.Name = "Form1"; this.Text = "Form1"; ((System.ComponentModel.ISupportInitialize)(this.RadGridView1)).EndInit(); this.ResumeLayout(false); } #endregion private Telerik.WinControls.UI.RadGridView RadGridView1; }}Form1.cs
using System;using System.Data;using System.Linq;using System.Windows.Forms;using Telerik.WinControls.UI;namespace TelerikPlaygroundWindows{ public partial class Form1 : Form { public Form1() { InitializeComponent(); InitializeGrid(); populateGrid(); } private void InitializeGrid() { HtmlViewDefinition htmlView = new HtmlViewDefinition(); htmlView.RowTemplate.Rows.Add(new RowDefinition()); htmlView.RowTemplate.Rows[0].Cells.Add(new CellDefinition("Datelabel")); htmlView.RowTemplate.Rows[0].Cells.Add(new CellDefinition("Eventdate")); htmlView.RowTemplate.Rows[0].Cells[1].Width = 200; htmlView.RowTemplate.Rows[0].Cells.Add(new CellDefinition("Appraisallabel")); htmlView.RowTemplate.Rows[0].Cells.Add(new CellDefinition("Appraisalyn")); htmlView.RowTemplate.Rows[0].Cells[3].ColSpan = 3; htmlView.RowTemplate.Rows.Add(new RowDefinition()); htmlView.RowTemplate.Rows[1].Cells.Add(new CellDefinition("Categorylabel")); htmlView.RowTemplate.Rows[1].Cells.Add(new CellDefinition("Categoryname")); htmlView.RowTemplate.Rows[1].Cells[1].Width = 200; htmlView.RowTemplate.Rows[1].Cells.Add(new CellDefinition("Pagestartlabel")); htmlView.RowTemplate.Rows[1].Cells.Add(new CellDefinition("Pagenumberstart")); htmlView.RowTemplate.Rows[1].Cells.Add(new CellDefinition("Pageendlabel")); htmlView.RowTemplate.Rows[1].Cells.Add(new CellDefinition("Pagenumberend")); htmlView.RowTemplate.Rows.Add(new RowDefinition()); htmlView.RowTemplate.Rows[2].Cells.Add(new CellDefinition("Notelabel")); htmlView.RowTemplate.Rows[2].Cells[0].ColSpan = 6; htmlView.RowTemplate.Rows.Add(new RowDefinition()); htmlView.RowTemplate.Rows[3].Cells.Add(new CellDefinition("Notes")); htmlView.RowTemplate.Rows[3].Cells[0].ColSpan = 6; //htmlView.RowTemplate.Rows[3].Height = 100; RadGridView1.ViewDefinition = htmlView; } private void populateGrid() { DataTable table = new DataTable(); table.Columns.Add("Medicalsummarydetailid", typeof(int)); table.Columns.Add("Eventdate", typeof(DateTime)); table.Columns.Add("Appraisalyn", typeof(string)); table.Columns.Add("Categoryid", typeof(string)); table.Columns.Add("Categoryname", typeof(string)); table.Columns.Add("Notes", typeof(string)); table.Columns.Add("Pagenumberstart", typeof(string)); table.Columns.Add("Pagenumberend", typeof(string)); table.Columns.Add("Datelabel", typeof(string)); table.Columns.Add("Appraisallabel", typeof(string)); table.Columns.Add("Categorylabel", typeof(string)); table.Columns.Add("Pagestartlabel", typeof(string)); table.Columns.Add("Pageendlabel", typeof(string)); table.Columns.Add("Notelabel", typeof(string)); for (int i = 0; i < 10; i++) { DataRow row = table.NewRow(); row["Medicalsummarydetailid"] = i; row["Eventdate"] = DateTime.Now; row["Appraisalyn"] = "Y"; row["Categoryid"] = i; row["Categoryname"] = "Test Category"; row["Notes"] = String.Format("This is the first line{0}This is the second line{0}This is the third line{0}This is the fourth line{0}This is the fifth line{0}This is the sixth line{0}", Environment.NewLine); row["Pagenumberstart"] = 1; row["Pagenumberend"] = 2; row["Datelabel"] = "Date: "; row["Appraisallabel"] = "Appraisal: "; row["Categorylabel"] = "Category: "; row["Pagestartlabel"] = "Start: "; row["Pageendlabel"] = "End: "; row["Notelabel"] = "Note: "; table.Rows.Add(row); } RadGridView1.DataSource = table; } }}I am also facing same issue. Telerik grid row is overlapping when GridViewDataColumn is having multiline text. If we resize column or apply any filter, row overlapping disappears. Do we have any solution for this?
<telerik:GridViewDataColumn
DataMemberBinding="{Binding ConnectedCardInfo, Mode=OneWay}"
IsReadOnly="True" IsVisible="{Binding IsTSeries}"
UniqueName="ConnectedCardInfo">
<telerik:GridViewDataColumn.Header>
<TextBlock Text="Connected Card Info" TextWrapping="WrapWithOverflow" ToolTip="Connected Card Info"/>
</telerik:GridViewDataColumn.Header>
</telerik:GridViewDataColumn>
Thank you for writing.
I would like to note that this forum is related to the Telerik UI for WinForms product. Feel free to post your question in the relevant forum: http://www.telerik.com/forums
Thank you for your understanding.
Regards,
Dess
Telerik
