C_Sharp 板


LINE

如果我从DB中捞资料 捞完资料後要立即更新Lable值 之後每30秒会捞一次资料 我想要在捞完资料後立即更新Label值 我尝试用Timer 但他只能控制时间 可是我希望是在我做完这个动作後的下一行更新Label值 而不是每30秒更新值 我也试过委派了 可是都不行 请问还有甚麽办法吗 谢谢 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.6.129
1F:→ a926:?? Timer每30秒触发事件後->DB捞资料->更新Label值 02/10 11:06
2F:→ a926:是你的流程有问题吗? 02/10 11:06
我是在前端写个timer 设定每1秒捞资料 但他第一次捞资料 他会乱跳 第一次通常会在等100秒或20或30更新一次Label 之後就会固定每一秒捞资料 可是第一次捞资料的时间会不固定 之後就会很正常 不知道为什麽会这样 谢谢 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/10 11:18)
3F:→ KanoLoa:更新label.text 之後,多一行label.update看看 02/10 13:23
4F:→ KanoLoa:你第一次捞资料的时候有确定连接到资料库了吗 02/10 13:24
5F:→ Litfal:是DB端有问题还是UI端有问题?所以说要把物件职责拆开阿... 02/10 13:25
6F:→ Litfal:至少把DbContext和UI分开,改用事件通知来写。 02/10 13:27
我贴一下部分的程式码 我确定值有存到A里面 只是他没有显示到前端 我希望他可以动态显示到前端 Button2_Click1(object sender, EventArgs e) { while{ //////捞资料到string A///// A=捞出的资料; } } protected void Timer1_Tick(object sender, EventArgs e) { Label1.Text = A; } ※ 编辑: Anthony53 来自: 140.109.6.129 (02/10 13:43)
7F:推 johnpage:timer使用有问题 02/10 15:07
请问哪边出了问题 谢谢 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/10 18:54)
8F:→ Litfal:A到底是string还是Control...怎麽会有A.Text 02/10 19:04
9F:→ Litfal:而且你这Timer也没有重新捞资料阿 02/10 19:05
A是string 抱歉我打错 Timer我设定每5秒会重新更新 A的值会随着每次while做完就会更新 A我宣告在global 所以我这样写会产生问题吗 还麻烦帮忙指证 谢谢! ※ 编辑: Anthony53 来自: 140.109.6.129 (02/10 19:15)
10F:→ KanoLoa:会,捞资料太慢配上你的timer逻辑可能会卡到没更新画面 02/11 00:25
11F:→ KanoLoa:先试试看把label那行丢在button2事件最後一行测试正确 02/11 00:26
12F:→ KanoLoa:不过这种写法不好,别在UI事件中放可能会读取很久的逻辑 02/11 00:26
我有测试过 值是正确的 可是没办法动态更新画面 值只会在server端 可以请教一下 如果这样的处理 该用甚麽方式比较好呢 谢谢 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/11 09:17) ※ 编辑: Anthony53 来自: 140.109.6.129 (02/11 09:22)
13F:→ KanoLoa:额外开一个新的执行序去捞资料 02/11 10:14
14F:→ KanoLoa:UI更新画面会等你事件全处理好才一次更新,自然会跳过 02/11 10:16
我把我的问题简化 static int i=0; protected void Timer1_Tick(object sender, EventArgs e) { Label1.Text = i; } protected void Button1_Click(object sender, EventArgs e) { while (true) { i++; } } 我希望看到 按下button後 会看到 0123456789.... 可是我这样写 会只看到0就停住了 大概过了若干秒 才会出现0123456789... ※ 编辑: Anthony53 来自: 140.109.6.129 (02/11 12:21)
15F:→ m339606:AJAX + AJAX Timer 02/11 12:27
16F:→ KanoLoa:因为整个事件要等你回圈跑完才更新画面阿,当然会延迟。 02/11 13:01
17F:→ KanoLoa:创一个执行绪去额外跑回圈,会稍微好一点 02/11 13:02
那如果我这种做法 要怎麽写会比较适合 谢谢 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/11 13:59)
18F:→ KanoLoa:http://support.microsoft.com/kb/318607/zh-tw 02/11 16:53
我这限制要用web form才可以 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/11 17:12) void A(){ 回圈 { 抓资料 呼叫B } } void B(){ 将资料印到client 跳到A回圈刚刚呼叫B的地方 } 我在简化成这样...不知道有没有比较清楚 谢谢 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/11 17:16)
19F:→ KanoLoa:鬼打墙了,请开另一个执行续跑回圈,回圈速度慢点即可。 02/11 18:03
20F:→ KanoLoa:你知道更新画面的函示是哪个吗? 02/11 18:04
21F:→ Litfal:你都用Timer了何必用回圈哩...? 02/11 18:33
22F:→ KanoLoa:乾脆全贴吧 02/11 18:57
23F:推 largesperm:用 backgroundworker 02/11 20:28
我用的是web form Code: static int i=1; static string T=""; protected void Timer1_Tick(object sender, EventArgs e) { ////T为excel取出来的值/// Label1.Text = T; } protected void Button1_Click(object sender, EventArgs e) { while (i<1000) { ////从excel取出T值/// i++; } } 原始码大概长这样 每3秒会取出T值 所以我设定Timer每3秒更新一次 但现在我这样写 前面2分钟被while回圈给block Timer完全执行不了 过约两分钟後 就会变成Timer和while两个轮流用 大概是这样 谢谢 ※ 编辑: Anthony53 来自: 61.228.161.249 (02/11 21:00) ※ 编辑: Anthony53 来自: 61.228.161.249 (02/11 21:00)
24F:→ KanoLoa:舍弃你的回圈吧,另开一个timer慢慢+++++会比较容易理解 02/11 23:20
恩 可以请教一下 如果我再开另一个timer 我该怎麽控制从excel取值得timer做完取值的动作後 在呼叫另一个timer去client印出值 然後再跳回去取值呢 这是我一直卡住的地方 谢谢 ※ 编辑: Anthony53 来自: 61.228.161.249 (02/11 23:31)
25F:→ Litfal:回去重读Timer!上面就想推荐用System.Threading底下的Timer 02/12 00:32
Litfal:但想到要解释我就软了... 我早上有用 可是没有产生效果 http://ppt.cc/lcg1 我参考msdn
26F:→ KanoLoa:用一个timer一直检查数值是否有变动来决定要不要更新 02/12 01:01
我早上试过 就是timer一开始都抢不到cpu 虽然我设定了5秒要印出值 可是它会抢不到cpu所以就没办法印出值 ※ 编辑: Anthony53 来自: 140.109.6.129 (02/12 09:29)
27F:→ KanoLoa:回圈要拿掉!然後不要一直捞资料,不然都卡在那边 02/12 09:32







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP