CSkin博客

标题: SkinDataGridView绑定DataTable 线程添加数据后控件显示异常 [打印本页]

作者: nckf_fz    时间: 2018-4-10 21:49
标题: SkinDataGridView绑定DataTable 线程添加数据后控件显示异常
在使用SkinDataGridView   绑定DataTable  
线程A向DataTable添加多行数据后  达到一定行数后 本因显示滚动条的SkinDataGridView控件 右边只有一块黑色区域
并且无法使用滚轮滚动,只能选中单元格往下拉。并且左侧行号也无法正常显示 是一片空白 知道第二次添加数据  才能正常显示(单次59行 相当于一页多
尝试是使用Update在Rows更改事件中 无果  求解 谢谢


作者: nckf_fz    时间: 2018-4-10 22:11
而在手动调整控件标题项宽度的时候  又正常显示出来了  请问我需要如何正确调用更新控件方法呢?并且正常显示前点单元格  会很慢反应过来  
作者: 乔克斯    时间: 2018-4-11 01:59
多线程中操作主线程UI。要委托主线程操作UI。
作者: nckf_fz    时间: 2018-4-11 10:58
乔克斯 发表于 2018-4-11 01:59
多线程中操作主线程UI。要委托主线程操作UI。

是的 我使用了    不然肯定会抛异常
[C#] 纯文本查看 复制代码
/// <summary>
/// 重新绘制控件
/// </summary>
private void KeywordRankingControlUpdate() {
    //验证是否再UI线程上
    if (KeywordRankingDataGridView.InvokeRequired) {
        KeywordRankingControlUpdateDelegate controlUpdate = new KeywordRankingControlUpdateDelegate(KeywordRankingControlUpdate);
        Invoke(controlUpdate);
    } else {
        KeywordRankingDataGridView.Refresh();
    }
}





欢迎光临 CSkin博客 (http://bbs.cskin.net/) Powered by Discuz! X3.2