如何以编程方式更新用户界面控件?

Posted

技术标签:

【中文标题】如何以编程方式更新用户界面控件?【英文标题】:How to update user interface control programmatically? 【发布时间】:2016-10-14 09:47:53 【问题描述】:

目前我正在使用xmpp 框架开发客户端服务器应用程序,以下是我在应用程序中遵循的架构。

应用层,即网络客户端(网络表单)将与 API 层通信,然后 API 层将与xmppframework 通信。我想在收到朋友的消息时更新我的​​用户界面。如何更新我的用户界面?

API层包含以下代码

 _xmppClientConnection.OnMessage += new agsXMPP.protocol.client.MessageHandler(XmppCon_OnMessage); 

当有人向我发送消息时,此代码会执行并且消息被捕获在代码中。

public void  XmppCon_OnMessage(object sender, agsXMPP.protocol.client.Message messsage)

    _xmppClientMessage= messsage;

我想在文本框之类的控件上显示此消息,这是另一个称为用户界面(Web 表单)的层。

当我在 API 层收到消息时如何更新我的 UI?

应用层有一个功能

public void IncomingMessage(agsXMPP.protocol.client.Message message)

    txtMessage.Text = txtMessage.Text + message.Body;

当 API 层收到消息时,如何更新 UI?

【问题讨论】:

【参考方案1】:

您需要在后端和前端之间建立一个像 SignalR 这样的实时通道。 另请参阅我几年前在这里写的帖子:

http://www.ag-software.net/2012/08/20/web-clients-with-matrix-and-signalr/

【讨论】:

以上是关于如何以编程方式更新用户界面控件?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用用户在Juypter中使用ipywidgets UI控件设置的值以交互方式更新乳胶方程式?

如何以编程方式移动 UIScrollView 以集中在键盘上方的控件中?

如何在 Sharepoint 的 c# 非可视 Web 部件中以编程方式创建进度更新控件

iOS - 如何以编程方式为控件设置自定义类

如何以编程方式更新始终运行并使用 msix 部署的 WinForms 应用程序?

如何在 spritekit 中使用页面控件? (以编程方式)