The following code is working:
The column with header YYY should be editable. The column with header XXX will be read-only.Code://Initializing dataGridTableStyle1 = new DataGridTableStyle(); dataGridTextBoxColumn1 = new DataGridTextBoxColumn(); dataGridTextBoxColumn2 = new DataGridTextBoxColumn(); dataGrid1.BeginInit(); //Creating DataSource DataTable dt = new DataTable("MyTable"); dt.Columns.Add(New DataColumn("X",typeof(string)); dt.Columns.Add(New DataColumn("Y",typeof(string)); dataGrid1.DataSource = dt; // dataGridTableStyle1 dataGrid1.TableStyles.AddRange(new DataGridTableStyle[] {dataGridTableStyle1}); dataGridTableStyle1.DataGrid = dataGrid1; dataGridTableStyle1.GridColumnStyles.AddRange(new DataGridColumnStyle[] {dataGridTextBoxColumn1,dataGridTextBoxColumn2}); dataGridTableStyle1.MappingName = "MyTable"; // This is the name of the table you are binding to. // dataGridTextBoxColumn1 dataGridTextBoxColumn1.HeaderText = "XXX"; // This is the text that is written in the Column Header. Leave empty to show the name of the column. dataGridTextBoxColumn1.MappingName = "X"; // This is the name of the column. dataGridTextBoxColumn1.ReadOnly = true; dataGridTextBoxColumn1.Width = 75; // dataGridTextBoxColumn2 dataGridTextBoxColumn2.HeaderText = "YYY"; dataGridTextBoxColumn2.MappingName = "Y"; // This is the name of the column. dataGridTextBoxColumn2.ReadOnly = false; dataGridTextBoxColumn2.Width = 75; dataGrid1.EndInit();




Reply With Quote