Spread Windows Forms 12.0 Product Documentation
PaintCell Method (IRenderer)
Example 


FarPoint.Win.Spread Assembly > FarPoint.Win.Spread.CellType Namespace > IRenderer Interface : PaintCell Method
Graphics device interface for painting the cell
Location and size of a rectangular region
Appearance settings for the cell
Object - name of the renderer
Whether the cell is selected
Whether the cell is locked
Numeric value for scaling when painting the cell
Paints the cell when not editing.
Syntax
'Declaration
 
Sub PaintCell( _
   ByVal g As Graphics, _
   ByVal r As Rectangle, _
   ByVal appearance As Appearance, _
   ByVal value As Object, _
   ByVal isSelected As Boolean, _
   ByVal isLocked As Boolean, _
   ByVal zoomFactor As Single _
) 
'Usage
 
Dim instance As IRenderer
Dim g As Graphics
Dim r As Rectangle
Dim appearance As Appearance
Dim value As Object
Dim isSelected As Boolean
Dim isLocked As Boolean
Dim zoomFactor As Single
 
instance.PaintCell(g, r, appearance, value, isSelected, isLocked, zoomFactor)
void PaintCell( 
   Graphics g,
   Rectangle r,
   Appearance appearance,
   object value,
   bool isSelected,
   bool isLocked,
   float zoomFactor
)

Parameters

g
Graphics device interface for painting the cell
r
Location and size of a rectangular region
appearance
Appearance settings for the cell
value
Object - name of the renderer
isSelected
Whether the cell is selected
isLocked
Whether the cell is locked
zoomFactor
Numeric value for scaling when painting the cell
Remarks

For limits on the zoomFactor parameter, refer to the ZoomFactor property for the sheet.

Example
This example subclasses the IRenderer class and creates a custom renderer for the first cell in the spreadsheet to illustrate the use of the methods and events.
public static CheckBox ck = new CheckBox();

class myRenderer : FarPoint.Win.Spread.CellType.IRenderer
{
  public bool CanOverflow()
  {
      return true;
  }
  public bool CanBeOverflown()
  {
      return true;
  }
  public Size GetPreferredSize(Graphics g, Size s, FarPoint.Win.Spread.Appearance appr, object value, float zoom)
 {
      s = new Size(50, 50);
      return s;
  }
  public void PaintCell(Graphics g, Rectangle r, FarPoint.Win.Spread.Appearance appr, object value, bool issel, bool islocked,
float zoom) 
  {
      string s;
      ck.CheckState = CheckState.Checked;
      s = ck.CheckState.ToString();
      Font f = new Font("MS Sans Serif", 10);
      appr.BackColor = Color.Red;
      appr.ForeColor = Color.Yellow;
      appr.Font = f;
      Brush b, b1;
      b = new SolidBrush(appr.BackColor);
      b1 = new SolidBrush(appr.ForeColor);
      g.FillRectangle(b, r);
      g.DrawString(s, appr.Font, b1, r);
      b.Dispose();
      b1.Dispose();
      }
}

private void Form1_Load(object sender, System.EventArgs e)
{
      fpSpread1.ActiveSheet.Cells[0, 0].Renderer = new myRenderer();
}
Shared ck As New CheckBox()

Public Class myRenderer
Implements FarPoint.Win.Spread.CellType.IRenderer

Public Function CanBeOverflown() As Boolean Implements FarPoint.Win.Spread.CellType.IRenderer.CanBeOverflown
      Return True
End Function

Public Function CanOverflow() As Boolean Implements FarPoint.Win.Spread.CellType.IRenderer.CanOverflow
      Return True
End Function

Public Function GetPreferredSize(ByVal g As Graphics, ByVal s As Size, ByVal appr As FarPoint.Win.Spread.Appearance, ByVal
value As Object, ByVal zoom As Single) As Size Implements FarPoint.Win.Spread.CellType.IRenderer.GetPreferredSize
      s = New Size(50, 50)
      Return s
End Function

Public Sub PaintCell(ByVal g As Graphics, ByVal r As Rectangle, ByVal appr As FarPoint.Win.Spread.Appearance, ByVal Value
As Object, ByVal issel As Boolean, ByVal islocked As Boolean, ByVal zoom As Single) Implements FarPoint.Win.Spread.CellType.IRenderer.PaintCell
      Dim s As String
      ck.CheckState = CheckState.Checked
      s = ck.CheckState.ToString()
      Dim f As New Font("MS Sans Serif", 10)
      appr.BackColor = Color.Red
      appr.ForeColor = Color.Yellow
      appr.Font = f
      Dim b, b1 As Brush
      b = New SolidBrush(appr.BackColor)
      b1 = New SolidBrush(appr.ForeColor)
      g.FillRectangle(b, r)
      g.DrawString(s, appr.Font, b1, r.X, r.Y)
      b.Dispose()
      b1.Dispose()
End Sub

End Class

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      FpSpread1.ActiveSheet.Cells(0, 0).Renderer = New myRenderer()
End Sub
See Also

Reference

IRenderer Interface
IRenderer Members