• DataGridView自定义RichTextBox列


    https://www.codeproject.com/Articles/31823/RichTextBox-Cell-in-a-DataGridView-2

    RichText是用图片显示的,当SelectionMode为FullRowSelect,图片背景颜色设置有bug。修改Paint方法解决:

            protected override void Paint(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, int rowIndex, DataGridViewElementStates cellState, object value, object formattedValue, string errorText, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts)
            {
                base.Paint(graphics, clipBounds, cellBounds, rowIndex, cellState, null, null, errorText, cellStyle, advancedBorderStyle, paintParts);
    
                bool selected = base.Selected;
                if ((cellState | DataGridViewElementStates.Selected) == cellState)
                {
                    selected = true;
                }
    
                Image img = GetRtfImage(rowIndex, value, selected);//base.Selected
    
                if (img != null)
                    graphics.DrawImage(img, cellBounds.Left, cellBounds.Top);
            }
    

      

  • 相关阅读:
    函数配接器
    函数对象和函数指针
    unary_function 和 binary_function
    堆排序
    Shell排序
    volatile理解
    死锁
    进程间通信
    优化循环的方法-循环展开
    如何学习编译原理
  • 原文地址:https://www.cnblogs.com/JayK/p/10124821.html
Copyright © 2020-2023  润新知