关于asp.net的多线程调用textbox

yalunwang123 2014-10-25 04:52:28
1、首先我做的是一个webform
button1开启了一个线程A
A中从外面得到数据存到了string str里
然后我让它textbox.text=str
然后调试的时候textbox。text的值也变成了str
但是网页里面textbox为什么显示不出来
2、大家都知道在winform里面如果在新建线程里面调用textbox控件会出现 ”从不是创建他的线程调用它“ 的报错。
我现在是在asp.net的webform里面新建一个线程并给textbox控件赋值,运行没有出错,就出现1中所描述的问题。
这是神马情况?求大神救救我吧。
...全文
141 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Pigeon汪 2014-10-26
  • 打赏
  • 举报
回复
用silverlight吧,实现你这个功能轻而异举
yalunwang123 2014-10-26
  • 打赏
  • 举报
回复
引用 3 楼 github_22161131 的回复:
显示不出来是因为页面已经返回给浏览器了,另一个线程才把值取来,再赋值就没用了。搞清楚这是B/S环境,和winform不一样。 如果取值的过程很久,为了避免用户等待太久的页面,可以在响应那个button的点击时开一个线程开始取值,取到的值存着,然后页面上用ajax异步轮询这个值,直到取到为止,显示在界面上。 如果不想写异步轮询这种代码,或者程序里这种需求比较多,用SignalR框架能方便点,可以用服务端推送的方式来实现。就是服务端取到值了,通过SignalR推送给客户端,客户端响应这个事件,把值显示/更新在页面上。
关于你说的第一种方法,我已经用button开启一个线程来接收数据了,你说的意思是用ajax轮寻就行了? 还有那个调试时textbox。text的值已经变了,为什么不显示。再说的详细点呗,分都给你了。我是新手。求指教
winnowc 2014-10-25
  • 打赏
  • 举报
回复
显示不出来是因为页面已经返回给浏览器了,另一个线程才把值取来,再赋值就没用了。搞清楚这是B/S环境,和winform不一样。 如果取值的过程很久,为了避免用户等待太久的页面,可以在响应那个button的点击时开一个线程开始取值,取到的值存着,然后页面上用ajax异步轮询这个值,直到取到为止,显示在界面上。 如果不想写异步轮询这种代码,或者程序里这种需求比较多,用SignalR框架能方便点,可以用服务端推送的方式来实现。就是服务端取到值了,通过SignalR推送给客户端,客户端响应这个事件,把值显示/更新在页面上。
yalunwang123 2014-10-25
  • 打赏
  • 举报
回复
引用 1 楼 diaodiaop 的回复:
谁告诉你 网页里还使用多线程的?
网页里面不能使用吗?用的是UDP通信。我就是之前发了几个帖子问你的那个菜鸟。现在已经实现了在局域网里控制别人电脑串口练得硬件。就是一个winform(集成udp通信和串口通信)和我的网页。比如说他电脑练了一个电机通过串口。我现在在我的网页上点一个按钮能让他的电机转。但是网页不能接收数据,其实已经接到了就是在textbox没显示出来。 网页不能用线程怎么一直接收啊
by_封爱 版主 2014-10-25
  • 打赏
  • 举报
回复
谁告诉你 网页里还使用多线程的?

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧