Spread Windows Forms 7.0 Product Documentation
SubEditor Property
See Also  Example Support Options
FarPoint.Win.Spread Assembly > FarPoint.Win.Spread Namespace > SubEditorOpeningEventArgs Class : SubEditor Property


Glossary Item Box

Gets the Control object that raises the event.

Syntax

Visual Basic (Declaration) 
Public ReadOnly Property SubEditor As Control
Visual Basic (Usage)Copy Code
Dim instance As SubEditorOpeningEventArgs
Dim value As Control
 
value = instance.SubEditor
C# 
public Control SubEditor {get;}

Property Value

Control object containing the subeditor control

Example

This example returns the control that raised the event.
C#Copy Code
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.SubEditor.ToString();
}
Visual BasicCopy Code
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.SubEditor.ToString()
End Sub

Requirements

Target Platforms: Windows 2000 Professional (SP4), Windows 2000 Server, Windows 2003 Server (SP1), Windows 2008, Windows XP (SP2), Windows Vista, Windows 7, Windows 8

See Also

© 2002-2014 ComponentOne, a division of GrapeCity. All Rights Reserved.