经常有人在看了前面写的《Flex实现多文件上传之一:前台部分》之后,询问有关进度条的问题,就是文件在上传之后,不关闭窗口的情况下,重新选择文件后,有的进度条的进度依然显示成了100%。 问题的原因本身和组件的itemRenderer使用有关,itemRenderer在组件中被创建后是循环使用的,并不是组件列表中有多少条数据就创建多少个itemRenderer。例如一个DataGrid组件中使用CheckBox用于选择,假设能看到的部分有10条记录,其它记录要通过拖动滚动条才能看到。那么DataGrid在创建itemRenderer时只会创建11到12个itemRenderer实例,多出的itemRenderer据说是用于定位的。然后这些itemRenderer循环使用。就是说你拖动DataGrid的滚动条在显示其它数据时,并不会创建新的itemRenderer来显示数据。 因此对于文件上传在DataGrid中使用进度条组件来显示的时候,前面如果成功上传了某个文件,重新选择文件后,itemRenderer仍然保留了上次文件上传成功的进度(FileReference)。这种情况是因为在进度条组件的监控模式使用了默认的事件侦听的方式(mode=event,可以修改监控模式,采用手工设置的方式,并重载itemRenderer的data属性来避免前面出现的问题。修改DataGrid组件中有进度条一栏的DataGridColumn如下:
<mx:DataGridColumn headerText="上传状态" width="130"> <mx:itemRenderer> <mx:Component> <mx:HBox width="130" horizontalGap="2"> <mx:Script> <![CDATA[ override public function set data(value:Object):void{ super.data = value; progress.setProgress(0,data.fileRefrence.size); data.fileRefrence.addEventListener(ProgressEvent.PROGRESS,progressHandler); } private function progressHandler(event:ProgressEvent):void{ progress.setProgress(event.bytesLoaded,data.fileRefrence.size); } ]]> </mx:Script>
<mx:ProgressBar id="progress" width="100%" labelPlacement="center" label="%3%%" mode="manual" minimum="0" maximum="{data.fileRefrence.size}"/> </mx:HBox> </mx:Component> </mx:itemRenderer> </mx:DataGridColumn>
|
分享到:
相关推荐
1、分页控件DataPager的简单使用。 2、可以控制外置的ScrollBar来实现对指定DataGrid的滚动操作。
WPF 中在datagrid中使用滚动条显示所有数据。 初学,欢迎交流。 下载次数越多所需积分越高,不定期改低积分。
asp.net 中 datagrid 标题跟内容列对齐
自定义DataGrid的列标题样式,行样式,鼠标悬浮及选择样式。 自定义滚动条样式,包括箭头及滚动区。
在WPF中,如果DataGrid里使用了模板列,当拖动滚动条时,往往会出现列表内容显示混乱的情况。解决方法就是在Binding的时候给UpdateSourceTrigger赋值。 <RowDefinition Height=25></RowDefinition> ...
easyui datagrid中实现上下左右、回车切换单元格easyui datagrid中实现上下左右、回车切换单元格easyui datagrid中实现上下左右、回车切换单元格
DataGrid 底部合计,在DataGrid 的外部,底部横向滚动条的下面做的汇总。
2.0DataGrid嵌套DataGrid,里面的鼠标滚动响应到外部,利用自定义命令传递滚轮事件参数实现,详细效果请移步: https://blog.csdn.net/u010438205/article/details/105710794
DataGrid 统计每一列的值,合计在底部。 这里的合计是在 DataGrid 的内部,汇总在最后一行,在 DataGrid 横向滚动条的上方进行汇总。
datagrid设行背景色示例,提供了继承好的datagrid子类,
gridview固定表头 横向滚动 纵向固定,即拖动横向滚动条时,表头随着表体移动,纵向拖动滚动条时,表头不动,实践得出来的结果 我用的是VS2010,C#
jquery easy ui datagrid完整项目源代码,非常值得学习
easyui的datagrid生成合并行,合计计算价格!
近期在用datagrid-scrollview时,发现如果列数较少,不产生横向滚动条时,则不会触发虚拟滚动翻页的动作,只能查出第一批次的数据信息,经过大量的时间测试改善,发现需要改变源码中的判断条件。仅供参考
打开tab页面时,自动载入一个iframe页面,除了iframe页面本身会出现一个滚动条,tab标签页也出现一个滚动条,如下图所示,需求就是去掉tab页面的滚动条 解决方法 通过观察html页面结构,发现这个滚动条归属class为...
解决EasyUIdataGrid列比较多,无数据,列展现不全
今天小编就为大家分享一篇layui 实现table翻页滚动条位置保持不变的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
在使用dialog插件时,默认是屏幕居中的,但是当页面出现滚动条时,dialog并没有随着滚动条往下滚动,这时就需要用户滑动滚动条来定位dialog,这不人性化,在说出解决方案前先来普及一下jquery关于定位的几个方法 ...
滚动条带缓动效果 可在datagrid单元格中插入图片