GrapeCity.Win.MultiRow Namespace > CheckBoxCell Class : ThreeState Property |
<DefaultValueAttribute()> <SRDescriptionAttribute("Indicates whether the CheckBoxCell allows three check states rather than two.")> <SRCategoryAttribute("Behavior")> Public Property ThreeState As Boolean
Dim instance As CheckBoxCell Dim value As Boolean instance.ThreeState = value value = instance.ThreeState
[DefaultValue()] [SRDescription("Indicates whether the CheckBoxCell allows three check states rather than two.")] [SRCategory("Behavior")] public bool ThreeState {get; set;}
If this property's value is false, the cell's value can be edited to true or false.
If this property's value is true, the cell's value can be edited to one of the System.Windows.Forms.CheckState values. System.Windows.Forms.CheckState.Checked is equal to true, System.Windows.Forms.CheckState.Unchecked is equal to false, System.Windows.Forms.CheckState.Indeterminate means it is not clear if the value is true or false.using System; using System.Windows.Forms; using System.Drawing; namespace GrapeCity.Win.MultiRow.SampleCode { public class CheckBoxCellDemo : Form { private GcMultiRow gcMultiRow1 = new GcMultiRow(); private Label label = new Label(); public CheckBoxCellDemo() { this.gcMultiRow1.Dock = DockStyle.Fill; this.Controls.Add(this.gcMultiRow1); this.Load += new EventHandler(Form1_Load); this.gcMultiRow1.CellValueChanged += new EventHandler<CellEventArgs>(gcMultiRow1_CellValueChanged); this.label.Dock = DockStyle.Bottom; this.label.Height = 30; this.label.BackColor = SystemColors.Info; this.label.Text = "Click one CheckBoxCell to change the check state, then press ENTER key to commit value."; this.Controls.Add(label); this.Text = "CheckBoxCell Demo"; } private void Form1_Load(object sender, EventArgs e) { CheckBoxCell checkBoxCell1 = new CheckBoxCell(); checkBoxCell1.ThreeState = true; checkBoxCell1.TrueValue = "Yes"; checkBoxCell1.FalseValue = "No"; checkBoxCell1.IndeterminateValue = "Ignore"; checkBoxCell1.Text = "State"; checkBoxCell1.CheckAlign = ContentAlignment.MiddleRight; Template template1 = Template.CreateGridTemplate(new Cell[] { checkBoxCell1, checkBoxCell1.Clone() as Cell }, 160, AutoGenerateGridTemplateStyles.ColumnHeader | AutoGenerateGridTemplateStyles.RowHeaderAutoNumber); gcMultiRow1.Template = template1; gcMultiRow1.RowCount = 3; } void gcMultiRow1_CellValueChanged(object sender, CellEventArgs e) { //When the value commits, the actual stored value is TrueValue, FalseValue, or IndeterminateValue. if (this.gcMultiRow1.CurrentCell.Value != null) { this.label.Text = "The current parsed value is " + this.gcMultiRow1.CurrentCell.Value.ToString(); } } [STAThreadAttribute()] public static void Main() { Application.EnableVisualStyles(); Application.Run(new CheckBoxCellDemo()); } } }
Imports System Imports System.Windows.Forms Imports System.Drawing Imports GrapeCity.Win.MultiRow Public Class CheckBoxCellDemo Inherits Form Friend WithEvents gcMultiRow1 As New GcMultiRow() Private label As New Label() Public Sub New() Me.gcMultiRow1.Dock = DockStyle.Fill Me.Controls.Add(Me.gcMultiRow1) Me.label.Dock = DockStyle.Bottom Me.label.Height = 30 Me.label.BackColor = SystemColors.Info Me.label.Text = "Click one CheckBoxCell to change the check state, then press ENTER key to commit value." Me.Controls.Add(label) Me.Text = "CheckBoxCell Demo" End Sub Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load Dim checkBoxCell1 As New CheckBoxCell() checkBoxCell1.ThreeState = True checkBoxCell1.TrueValue = "Yes" checkBoxCell1.FalseValue = "No" checkBoxCell1.IndeterminateValue = "Ignore" checkBoxCell1.Text = "State" checkBoxCell1.CheckAlign = ContentAlignment.MiddleRight Dim template1 As Template = Template.CreateGridTemplate(New Cell() {checkBoxCell1, TryCast(checkBoxCell1.Clone(), Cell)}) gcMultiRow1.Template = template1 gcMultiRow1.RowCount = 3 End Sub Private Sub gcMultiRow1_CellValueChanged(ByVal sender As Object, ByVal e As CellEventArgs) Handles gcMultiRow1.CellValueChanged 'When the value commits, the actual stored value is TrueValue, FalseValue, or IndeterminateValue. If Me.gcMultiRow1.CurrentCell.Value <> Nothing Then Me.label.Text = "The current parsed value is " + Me.gcMultiRow1.CurrentCell.Value.ToString() End If End Sub <STAThreadAttribute()> _ Public Shared Sub Main() Application.EnableVisualStyles() Application.Run(New CheckBoxCellDemo()) End Sub End Class
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2