>this.ColumnB.text1.Enabled = NameOfTheRecordSourceOftheGrid.FieldThatIsBinedToColumn1 >>
>oForm = CREATEOBJECT([Form1]) >oForm.Show() >READ EVENTS > >DEFINE CLASS form1 AS form > > > DoCreate = .T. > Caption = "Form1" > Name = "Form1" > > > ADD OBJECT grid1 AS grid WITH ; > ColumnCount = 2, ; > Height = 200, ; > Left = 29, ; > RecordSource = "cTest", ; > Top = 11, ; > Width = 320, ; > Name = "Grid1", ; > Column1.ControlSource = "cTest.Fld1", ; > Column1.Sparse = .F., ; > Column1.Name = "Column1", ; > Column2.ControlSource = "cTest.Fld2", ; > Column2.Name = "Column2" > > PROCEDURE Load > CREATE CURSOR cTest (Fld1 L, Fld2 C(20)) > FOR asd = 1 TO 20 > INSERT INTO cTest VALUES (asd%2 == 0, TRANSFORM(asd)) > NEXT > LOCATE > ENDPROC > > PROCEDURE Init > thisform.Grid1.Column1.AddObject([Check1],[CheckBox]) > thisform.Grid1.Column1.Check1.Caption = [] > thisform.Grid1.Column1.Check1.Visible = .t. > thisform.Grid1.Column1.CurrentControl = [Check1] > thisform.Grid1.Column1.removeObject([text1]) > ENDPROC > > PROCEDURE grid1.AfterRowColChange > LPARAMETERS nColIndex > this.Column2.Text1.Enabled = cTest.Fld1 > ENDPROC > > PROCEDURE Destroy > CLEAR EVENTS > ENDPROC >ENDDEFINE >This doesn't have visual appearance unless you move to the record. I think we may use this solution for the readonly, but not for the enabled status.