Spread Windows Forms 13.0 Product Documentation
FarPoint.Win.Spread Assembly / FarPoint.Win.Spread Namespace / SubEditorOpeningEventArgs Class / EditingControl Property
Example


In This Topic
    EditingControl Property (SubEditorOpeningEventArgs)
    In This Topic
    Gets the parent of the control that raised the event.
    Syntax
    'Declaration
     
    Public ReadOnly Property EditingControl As Control
    'Usage
     
    Dim instance As SubEditorOpeningEventArgs
    Dim value As Control
     
    value = instance.EditingControl
    public Control EditingControl {get;}

    Property Value

    Control object containing the editor control
    Example
    This example returns the parent of the control that raised the event.
    public class mySubEd : Form, FarPoint.Win.Spread.CellType.ISubEditor
    {
    public event EventHandler ValueChanged;
    public event EventHandler CloseUp;
    private TextBox txt = null;
    private Button BtnOk = null;
    private Button BtnCancel = null;
    
    public mySubEd()
    {
    FormBorderStyle = FormBorderStyle.FixedSingle;
    MaximizeBox = false;
    MinimizeBox = false;
    ControlBox = false;
    txt = new TextBox();
    BtnOk = new Button();
    BtnCancel = new Button();
    txt.Location = new Point(0, 0);
    txt.Size = new Size(110, 200);
    txt.ForeColor = Color.Red;
    BtnOk.Location = new Point(3, 75);
    BtnOk.Size = new Size(50, 25);
    BtnOk.Text = "OK";
    BtnOk.ForeColor = Color.Red;
    BtnCancel.Location = new Point(57, 75);
    BtnCancel.Size = new Size(50, 25);
    BtnCancel.Text = "Cancel";
    BtnCancel.ForeColor = Color.Red;
    Controls.Add(txt);
    Controls.Add(BtnOk);
    Controls.Add(BtnCancel);
    Text = "Editor";
    BtnOk.Click += new EventHandler(OKClicked);
    BtnCancel.Click += new EventHandler(CancelClicked);
    txt.TextChanged += new EventHandler(txtTextChanged);
    }
    
    private void OKClicked(object sender, EventArgs e)
    {
    if (ValueChanged != null)
    ValueChanged(this, EventArgs.Empty);
    if (CloseUp != null)
    CloseUp(this, EventArgs.Empty);
    }
    
    private void CancelClicked(object sender, EventArgs e)
    {
    if (CloseUp != null)
    CloseUp(this, EventArgs.Empty);
    }
    
    private void txtTextChanged(object sender, EventArgs e)
    {
    Text = txt.Text;
    }
    
    public Point GetLocation(Rectangle rect)
    {
    Point pt = new Point(0);
    Size sz = GetPreferredSize();
    pt.Y = (Screen.PrimaryScreen.WorkingArea.Height/2) - (sz.Height/2);
    pt.X = (Screen.PrimaryScreen.WorkingArea.Width/2) - (sz.Width/2);
    return pt;
    }
    public Control GetSubEditorControl()
    {
    return this;
    }
    public object GetValue()
    {
    return txt.Text;
    }
    public void SetValue(object value)
    {
    value = txt.Text;
    }
    public Size GetPreferredSize()
    {
    return new Size(115, 130);
    }
    }
    
    private void Form1Load(object sender, System.EventArgs e)
    {
    FarPoint.Win.Spread.CellType.TextCellType t = new FarPoint.Win.Spread.CellType.TextCellType();
    t.SubEditor = new mySubEd();
    fpSpread1.ActiveSheet.Cells[0, 0].CellType = t;
    }
    
    private void fpSpread1SubEditorOpen(object sender, FarPoint.Win.Spread.SubEditorOpeningEventArgs e) 
    {
    textBox1.Text = e.EditingControl.ToString();
    }
    
    Public Class mySubEd
    Inherits Form
    Implements FarPoint.Win.Spread.CellType.ISubEditor
    
    Public Event CloseUp(ByVal sender As Object, ByVal e As EventArgs) Implements FarPoint.Win.Spread.CellType.ISubEditor.CloseUp
    Public Event ValueChanged(ByVal sender As Object, ByVal e As EventArgs) Implements FarPoint.Win.Spread.CellType.ISubEditor.ValueChanged
    Private BtnOk As Button = Nothing
    Private BtnCancel As Button = Nothing
    Private txt As TextBox = Nothing
    
    Public Sub New()
    FormBorderStyle = FormBorderStyle.FixedSingle
    MaximizeBox = False
    MinimizeBox = False
    ControlBox = False
    txt = New TextBox
    BtnOk = New Button
    BtnCancel = New Button
    txt.Location = New Point(0, 0)
    txt.Size = New Size(110, 200)
    txt.ForeColor = Color.Red
    BtnOk.Location = New Point(3, 75)
    BtnOk.Size = New Size(50, 25)
    BtnOk.Text = "OK"
    BtnOk.ForeColor = Color.Red
    BtnCancel.Location = New Point(57, 75)
    BtnCancel.Size = New Size(50, 25)
    BtnCancel.Text = "Cancel"
    BtnCancel.ForeColor = Color.Red
    Controls.Add(txt)
    Controls.Add(BtnOk)
    Controls.Add(BtnCancel)
    Text = "Editor"
    AddHandler BtnOk.Click, AddressOf OKClicked
    AddHandler BtnCancel.Click, AddressOf CloseClicked
    AddHandler txt.TextChanged, AddressOf txtTextChanged
    End Sub
    
    Private Sub OKClicked(ByVal sender As Object, ByVal e As EventArgs)
    RaiseEvent ValueChanged(Me, EventArgs.Empty)
    RaiseEvent CloseUp(Me, EventArgs.Empty)
    End Sub
    
    Private Sub CloseClicked(ByVal sender As Object, ByVal e As EventArgs)
    RaiseEvent CloseUp(Me, EventArgs.Empty)
    End Sub
    
    Private Sub txtTextChanged(ByVal sender As Object, ByVal e As EventArgs)
    Text = txt.Text
    End Sub
    
    Public Function GetLocation(ByVal rect As Rectangle) As Point Implements FarPoint.Win.Spread.CellType.ISubEditor.GetLocation
    Dim pt As New Point(0)
    Dim sz As Size = GetPreferredSize()
    pt.Y = (Screen.PrimaryScreen.WorkingArea.Height / 2) - (sz.Height / 2)
    pt.X = (Screen.PrimaryScreen.WorkingArea.Width / 2) - (sz.Width / 2)
    Return pt
    End Function
    
    Public Function GetPreferredSize() As Size Implements FarPoint.Win.Spread.CellType.ISubEditor.GetPreferredSize
    Return New Size(115, 130)
    End Function
    
    Public Function GetSubEditorControl() As Control Implements FarPoint.Win.Spread.CellType.ISubEditor.GetSubEditorControl
    Return Me
    End Function
    
    Public Function GetValue() As Object Implements FarPoint.Win.Spread.CellType.ISubEditor.GetValue
    Return txt.Text
    End Function
    
    Public Sub SetValue(ByVal value As Object) Implements FarPoint.Win.Spread.CellType.ISubEditor.SetValue
    value = txt.Text
    End Sub
    End Class
    
    Private Sub Form1Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
    Dim t As New FarPoint.Win.Spread.CellType.TextCellType
    t.SubEditor = New mySubEd
    FpSpread1.ActiveSheet.Cells(0, 0).CellType = t
    
    End Sub
    
    Private Sub FpSpread1SubEditorOpen(ByVal sender As Object, ByVal e As FarPoint.Win.Spread.SubEditorOpeningEventArgs) Handles
    FpSpread1.SubEditorOpen
    TextBox1.Text = e.EditingControl.ToString()
    End Sub
    See Also