这里使用的TabControl不是VS自带的控件,而是来自于DevComponents.DotNetBar2程序集(该程序集是Office2007皮肤的典型代表);DataGridView控件也是该程序集,在该程序集中的名称是DataGridViewX。在配合使用时有下问题:(不排除在VS自带的控件上使用会遇到该问题)
例如添加了一个TabControl控件,取名为:tcTest,在其中放置了两个TabItem,分别取名为tiTest1和tiTest2。并在tiTest1上放置了一个DataGridViewX控件——取名为dgvx1;在tiTest2上放置了一个DataGridViewX控件——取名为dgvx2。dgvx1和dgvx2都绑定了数据源,显示了若干行数据。此时tcTest默认显示的是tiTest1,也就是tcTest的SelectedTabIndex为0——对应tiTest1
1、如果我对dgvx2做了一些单元格的特殊效果(例如设置了背景色和字体颜色),该处理是在窗体加载后设置好的,即在load事件中设置的。从tiTest1切换到tiTest2时,无法正常显示这些效果;
2、如果我把tcTest的SelectedTabIndex设置为1后,即默认显示tiTest2,此时dgvx1和dgvx2的特殊效果都显示正常了。