I created a user control for Windows forms application. All it has is a TableLayoutPanel with four cells. Cell[0,0] and cell[0,1] have labels. Cell[1,0] has a treeview and cell[1,1] has CheckedListBox.
For all four controls, I have set docking to Fill. That freaking CheckedListBox appears smaller than TreeView. Is there any way to get proper docking for the controls?
BTW, I am using .Net 3.5 and VS 2010.
Following is the designer file code for the control:
namespace UserControls
{
partial class LinkedContent
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <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 Component 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()
{
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.lblContentGroups = new System.Windows.Forms.Label();
this.lblModules = new System.Windows.Forms.Label();
this.tvContent = new System.Windows.Forms.TreeView();
this.chkListBoxModules = new System.Windows.Forms.CheckedListBox();
this.tableLayoutPanel1.SuspendLayout();
this.SuspendLayout();
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Single;
this.tableLayoutPanel1.ColumnCount = 2;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Controls.Add(this.lblContentGroups, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.lblModules, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.tvContent, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.chkListBoxModules, 1, 1);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.760532F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 92.23947F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(501, 451);
this.tableLayoutPanel1.TabIndex = 0;
//
// lblContentGroups
//
this.lblContentGroups.AutoSize = true;
this.lblContentGroups.Dock = System.Windows.Forms.DockStyle.Fill;
this.lblContentGroups.Location = new System.Drawing.Point(4, 1);
this.lblContentGroups.Name = "lblContentGroups";
this.lblContentGroups.Size = new System.Drawing.Size(243, 34);
this.lblContentGroups.TabIndex = 0;
this.lblContentGroups.Text = "Content Groups";
this.lblContentGroups.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// lblModules
//
this.lblModules.AutoSize = true;
this.lblModules.Dock = System.Windows.Forms.DockStyle.Fill;
this.lblModules.Location = new System.Drawing.Point(254, 1);
this.lblModules.Name = "lblModules";
this.lblModules.Size = new System.Drawing.Size(243, 34);
this.lblModules.TabIndex = 1;
this.lblModules.Text = "Modules";
this.lblModules.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// tvContent
//
this.tvContent.CheckBoxes = true;
this.tvContent.Dock = System.Windows.Forms.DockStyle.Fill;
this.tvContent.Location = new System.Drawing.Point(4, 39);
this.tvContent.Name = "tvContent";
this.tvContent.Size = new System.Drawing.Size(243, 408);
this.tvContent.TabIndex = 2;
//
// chkListBoxModules
//
this.chkListBoxModules.Dock = System.Windows.Forms.DockStyle.Fill;
this.chkListBoxModules.FormattingEnabled = true;
this.chkListBoxModules.Location = new System.Drawing.Point(254, 39);
this.chkListBoxModules.Name = "chkListBoxModules";
this.chkListBoxModules.Size = new System.Drawing.Size(243, 408);
this.chkListBoxModules.TabIndex = 3;
//
// LinkedContent
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.tableLayoutPanel1);
this.Name = "LinkedContent";
this.Size = new System.Drawing.Size(501, 451);
this.tableLayoutPanel1.ResumeLayout(false);
this.tableLayoutPanel1.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private System.Windows.Forms.Label lblContentGroups;
private System.Windows.Forms.Label lblModules;
private System.Windows.Forms.TreeView tvContent;
private System.Windows.Forms.CheckedListBox chkListBoxModules;
}
}
Check to make sure the IntegralHeight Property is not set. It defaults to true.
From above MSDN Link:
When this property is set to true, the control automatically resizes to ensure that an item is not partially displayed. If you want to maintain the original size of the ListBox based on the space requirements of your form, set this property to false.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With