本文主要是介绍DataGrid扩展,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ExtendDataGridHelper.SetCellEnableFalse<ComboBox>(dtgShow, "cbxCellEditEQ");
/// <summary>/// 设置Datagrid某列不可编辑/// </summary>/// <typeparam name="T">CellEditing时,单元格中控件的 类型</typeparam>/// <param name="dtg">DataGrid</param>/// <param name="name">单元格中控件的 名称</param>public static void SetCellEnableFalse<T>(this DataGrid dtg, string name) where T : Control{System.Threading.SynchronizationContext context = System.Threading.SynchronizationContext.Current;System.Threading.Tasks.Task task = new System.Threading.Tasks.Task(() =>{System.Threading.Thread.Sleep(300);context.Post((c) =>{DataGridTemplateColumn templateColumn = dtg.Columns[1] as DataGridTemplateColumn;FrameworkElement fwElement = dtg.Columns[1].GetCellContent(dtg.Items.GetItemAt(dtg.SelectedIndex));if (fwElement != null){T cbx = (T)templateColumn.CellEditingTemplate.FindName(name, fwElement);cbx.IsEnabled = false;}}, null);});task.Start();}
这篇关于DataGrid扩展的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!