PowerTools SPREAD for Windows Forms 10.0J
PerformLayout() メソッド


SPREADが子コントロールにレイアウト ロジックを適用するようにします。
構文
'Declaration
 
Public Overloads Shadows Sub PerformLayout() 
'使用法
 
Dim instance As FpSpread
 
instance.PerformLayout()
public new void PerformLayout()
次のサンプルコードは、PerformLayoutメソッドを使用します。
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
参照

FpSpread クラス
FpSpread メンバ
オーバーロード一覧

 

 


© 2004-2017, GrapeCity inc. All rights reserved.