Spread Windows Forms 13.0 Product Documentation
FarPoint.Win.Spread Assembly / FarPoint.Win.Spread Namespace / FpSpread Class / PerformLayout Method / PerformLayout() Method
Example


In This Topic
    PerformLayout() Method
    In This Topic
    Forces the Spread component to apply layout logic to its child controls.
    Syntax
    'Declaration
     
    Public Overloads Shadows Sub PerformLayout() 
    'Usage
     
    Dim instance As FpSpread
     
    instance.PerformLayout()
    public new void PerformLayout()
    Example
    This example uses the PerformLayout method.
    public class SpreadTextBox : TextBox, FarPoint.Win.Spread.DrawingSpace.IEmbeddedControlSupport
            {
                private FarPoint.Win.Spread.DrawingSpace.Moving moving = FarPoint.Win.Spread.DrawingSpace.Moving.None;
                private FarPoint.Win.Spread.DrawingSpace.Sizing sizing = FarPoint.Win.Spread.DrawingSpace.Sizing.None;
                private FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy activation = FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy.DoubleClick;
    
                public virtual FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy ActivationPolicy
                {
                    get
                    {
                        return activation;
                    }
                    set
                    {
                    }
                }
    
                public virtual FarPoint.Win.Spread.DrawingSpace.Moving CanMove
                {
                    get
                    {
                        return moving;
                    }
                    set
                    {
                        moving = value;
                    }
                }
    
                public virtual FarPoint.Win.Spread.DrawingSpace.Sizing CanSize
                {
                    get
                    {
                        return sizing;
                    }
                    set
                    {
                        sizing = value;
                    }
                }
    
                public void ControlPaint(Graphics g, Rectangle r, FarPoint.Win.Spread.Appearance appearance, object value, bool isSelected,
               bool isLocked, float zoomFactor)
                {
                    g.SetClip(r, System.Drawing.Drawing2D.CombineMode.Intersect);
                    g.FillRectangle(new SolidBrush(this.BackColor), r);
                    g.DrawString(this.Text, Font, new SolidBrush(this.ForeColor), r.X, r.Y);                
                    this.TextChanged += new EventHandler(MeTextChanged);
                }
    
                public void MeTextChanged(object sender, EventArgs e)
                {
                    this.BackColor = Color.Beige;
                }
            }
    
    
         private void Form1_Load(object sender, EventArgs e)
            {
                SpreadTextBox tb = new SpreadTextBox();
                tb.Name = "TB";
                fpSpread1.ActiveSheet.AddControl(tb, 2, 2);          
            }
    
    private void button1_Click(object sender, EventArgs e)
            {
                fpSpread1.PerformLayout();
            }
    Public Class SpreadTextBox
            Inherits TextBox
            Implements FarPoint.Win.Spread.DrawingSpace.IEmbeddedControlSupport
    
            Private moving As FarPoint.Win.Spread.DrawingSpace.Moving = FarPoint.Win.Spread.DrawingSpace.Moving.None
            Private sizing As FarPoint.Win.Spread.DrawingSpace.Sizing = FarPoint.Win.Spread.DrawingSpace.Sizing.None
            Private activation As FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy = FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy.DoubleClick
    
            Public Overridable Property ActivationPolicy() As FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy Implements FarPoint.Win.Spread.DrawingSpace.IEmbeddedControlSupport.ActivationPolicy
                Get
                    Return activation
                End Get
                Set(ByVal Value As FarPoint.Win.Spread.DrawingSpace.ChildActivationPolicy)
                    ' activation = Value
                End Set
            End Property
    
            Public Overridable Property CanMove() As FarPoint.Win.Spread.DrawingSpace.Moving Implements FarPoint.Win.Spread.DrawingSpace.IEmbeddedControlSupport.CanMove
                Get
                    Return moving
                End Get
                Set(ByVal Value As FarPoint.Win.Spread.DrawingSpace.Moving)
                    moving = Value
                End Set
            End Property
    
            Public Overridable Property CanSize() As FarPoint.Win.Spread.DrawingSpace.Sizing Implements FarPoint.Win.Spread.DrawingSpace.IEmbeddedControlSupport.CanSize
                Get
                    Return sizing
                End Get
                Set(ByVal Value As FarPoint.Win.Spread.DrawingSpace.Sizing)
                    sizing = Value
                End Set
            End Property
    
            Public Sub ControlPaint(ByVal g As Graphics, ByVal r As Rectangle, ByVal appearance As FarPoint.Win.Spread.Appearance,
    ByVal value As Object, ByVal isSelected As Boolean, ByVal isLocked As Boolean, ByVal zoomFactor As Single) Implements FarPoint.Win.Spread.DrawingSpace.IEmbeddedControlSupport.ControlPaint
                g.SetClip(r, Drawing2D.CombineMode.Intersect)
                g.FillRectangle(New SolidBrush(Me.BackColor), r)
                g.DrawString(Me.Text, Font, New SolidBrush(Me.ForeColor), r.X, r.Y)
                AddHandler Me.TextChanged, AddressOf MeTextChanged
            End Sub
    
            Public Sub MeTextChanged(ByVal sender As Object, ByVal e As EventArgs)
                Me.BackColor = Color.Beige
            End Sub
        End Class
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Dim tb As New SpreadTextBox()
            tb.Name = "TB"
            fpSpread1.ActiveSheet.AddControl(tb, 2, 2)
        End Sub
    
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            fpSpread1.PerformLayout()
        End Sub
    See Also