在程序中修改后,界面上不能刷新显示。跟踪进去看,实际上该变量已经被修改了。同样动态修改column的text就可以刷新显示。奇怪?!
困扰好长时间了。。sigh
困扰好长时间了。。sigh
解决方案 »
- 如何将我整个Form的控件导出Excel
- 新手用installShield2010做安装包 遇到一个问题。
- C#怎样获得剪贴板上的文件?
- 如何给OracleParameter[]变量再增加一项
- 如何实现鼠标移动到listview的某行时,有一个浮动窗体显示详细信息?
- 请高手提供web中的批量下载图片代码
- 100高分——急,C# 中怎样实现接收邮件并保存附件?
- 获取文件的类别与时间
- 有没有不歧视乙肝,招聘带菌程序员的软件公司?(散分)
- c#操作字符串
- 急死我了!我做了一个ASP.NET WEB应用程序,生成安装程序后在别的机器上安装出错
- 一个简单的代码错误,Use of unassigned local variable 'x'
1.声明一个sublistitem
2.sublistitem = listview.items[i].subitems[j]
3.sublistitem.text = ...
这个小东东很好测,来帮忙改改,多谢诸位
但是我发现一个土办法,还没有找到原理所在.就是设完一行的所有sublistitem后,设置此item的text,就会自动刷新.呵呵,怪异.示例代码,假设设立一个2*2的listview:
//以下修改column,马上就能刷新
ColumnHeader colHead ;
for(int col = 0; col < 2 ;col++ )
{
colHead = lstView.Columns[col];
colHead.Text = Convert.ToString(col);
}
//这里修改SubItem
ListViewItem.ListViewSubItem lstSubItem;
for(int row = 0 ;row < 2 ;row++ )
{
for(int col = 0; col < 2 ;col++ )
{
lstSubItem = lstView.Items[row].SubItems[col];
lstSubItem.Text = Convert.ToString(col);
}
}
//不知道触发了什么事件,开始更新
for(int row = 0 ;row < 2 ;row++ )
{
lstView.Items[row].Text = lstView.Items[row].Text;
}
但是这样如果在一个大一点的表格中,会出现整个表格全部刷新闪烁一遍,性能不好.即使使用BeginUpdate和EndUpdate也一样,大侠们再议.