作者: nckf_fz
查看: 2555|回复: 3
打印 上一主题 下一主题

SkinDataGridView绑定DataTable 线程添加数据后控件显示异常

[复制链接]
跳转到指定楼层
楼主
nckf_fz 发表于 2018-4-10 21:49:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
查看: 2555|回复: 3
在使用SkinDataGridView   绑定DataTable  
线程A向DataTable添加多行数据后  达到一定行数后 本因显示滚动条的SkinDataGridView控件 右边只有一块黑色区域
并且无法使用滚轮滚动,只能选中单元格往下拉。并且左侧行号也无法正常显示 是一片空白 知道第二次添加数据  才能正常显示(单次59行 相当于一页多
尝试是使用Update在Rows更改事件中 无果  求解 谢谢

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播
回复 论坛版权

使用道具 举报

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

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|CSkin ( 粤ICP备13070794号

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2024-12-5 10:16, Processed in 0.815890 second(s), 31 queries , Gzip On.

快速回复 返回顶部 返回列表