zoukankan      html  css  js  c++  java
  • DataGrid 如何得到DataGridRow 和DataGridCell 对象

    第一行为不可编辑
     DataGridRow row = (DataGridRow)dataGrid1.ItemContainerGenerator.ContainerFromIndex(0);
                if (row == null)
                {
                    dataGrid1.UpdateLayout();
                    row = (DataGridRow)dataGrid1.ItemContainerGenerator.ContainerFromIndex(0);
                     
             }
             row.IsEnabled = false;
            public static T GetVisualChild<T>(Visual parent) where T : Visual
            {
                T childContent = default(T);
                int numVisuals = VisualTreeHelper.GetChildrenCount(parent);
                for (int i = 0; i < numVisuals; i++)
                {
                    Visual v = (Visual)VisualTreeHelper.GetChild(parent, i);
                    childContent = v as T;
                    if (childContent == null)
                    {
                        childContent = GetVisualChild<T>(v);
                    }
                    if (childContent != null)
                    {
                        break;
                    }
                }
                return childContent;
            }
      
      
    //第二行第一列不可编辑
                     DataGridRow rowContainer = GetDataGridRow(dataGrid1, 1);
      
                    if (rowContainer != null)
                    {
                        DataGridCellsPresenter presenter = GetVisualChild<DataGridCellsPresenter>(rowContainer);
                        DataGridCell cell = (DataGridCell)presenter.ItemContainerGenerator.ContainerFromIndex(1);
                        if (cell == null)
                        {
                            dataGrid1.ScrollIntoView(rowContainer, dataGrid1.Columns[0]);
                            cell = (DataGridCell)presenter.ItemContainerGenerator.ContainerFromIndex(0);
                            
                        }
      
                        cell.IsEnabled = false;
                    }
  • 相关阅读:
    上传图片2(接上一篇)
    上传图片2
    上传图片
    SQL Server基础之存储过程
    C#导入Excel、Excel导入、导入.xls 、导入.xlsx、Excel2003版本、Excel2007版本
    C#使用 System.Net.Mail发送邮件功能
    C#发送邮件三种方法,Localhost,SMTP,SSL-SMTP
    angular模板
    从“繁”到“简”进行数组去重
    CSS强制英文、中文换行与不换行
  • 原文地址:https://www.cnblogs.com/qq247039968/p/4567266.html
Copyright © 2011-2022 走看看