zoukankan      html  css  js  c++  java
  • WinCE设置DataGrid行高

    /// <summary>
    /// 设置DataGrid所有行的行高
    /// </summary>
    /// <param name="dg">DataGrid对象</param>
    /// <param name="cy">行高</param>
    public void SetGridDefaultRowHeight(DataGrid dg, int cy)
    {
        FieldInfo fi = dg.GetType().GetField("m_cyRow",
                        BindingFlags.NonPublic |
                        BindingFlags.Static |
                        BindingFlags.Instance);
        fi.SetValue(dg, cy);
        dg.GetType().GetMethod("_DataRebind",
                         BindingFlags.NonPublic |
                         BindingFlags.Static |
                         BindingFlags.Instance).Invoke(dg, new object[] { });
    }
    /// <summary>
    /// 设置指定行的行高
    /// </summary>
    /// <param name="dg">DataGrid对象</param>
    /// <param name="nRow">行索引</param>
    /// <param name="cy">行高</param>
    public void SetGridRowHeight(DataGrid dg, int nRow, int cy)
    {
        ArrayList arrRows = (ArrayList)dg.GetType().GetField("m_rlrow",
                        BindingFlags.NonPublic |
                        BindingFlags.Static |
                        BindingFlags.Instance).GetValue(dg);
        object row = arrRows[nRow];
        row.GetType().GetField("m_cy",
                         BindingFlags.NonPublic |
                         BindingFlags.Static |
                         BindingFlags.Instance).SetValue(row, cy);

    调用完上述函数后,要手动重绘,Gird.Invalidate()。
    利用反射你可以充分的自定义DataGrid的一些隐藏属性,并使用它的一些非公开的方法, 比如以下代码打印了所有DataGrid的隐藏属性:
    public void PrintField()
    {
        System.Reflection.FieldInfo[] fis = typeof(DataGrid).GetFields(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);
        string str = "";
        foreach (var fi in fis)
        {
            str+=fi.Name + ":" + fi.FieldType.ToString()+"\r\n";
        }
        MessageBox.Show(str);
    }
  • 相关阅读:
    线性单链表动态内存分配(C语言实现)
    线性顺序表动态内存分配(C语言实现)
    Linux-v01天-课堂笔记
    博客园之自定义博客(美化+播放器)
    递归练习
    算法基础练习-_06 二进制小数
    算法基础练习-_05将整数的奇偶位互换
    算法基础练习-_03 1的个数
    算法基础练习-_01找出唯一成对的数
    常用算法之快速排序
  • 原文地址:https://www.cnblogs.com/sydeveloper/p/2683367.html
Copyright © 2011-2022 走看看