【问题标题】:Change label across pages跨页面更改标签
【发布时间】:2011-09-15 08:32:00
【问题描述】:

我正在开发一个连接到串行端口的应用程序。我有 C# 方面的经验,但在 asp.net 方面没有那么多经验。

我在一个显示连接状态的 aspx 页面上有一个标签。当我单击一个按钮时,会打开一个新页面,让您选择要使用的串行端口。当您按下该页面上的 OK 按钮时,它会将您带回带有标签的原始页面。

最初,标签上写着:“状态:未连接”。我将此字符串保存在 globaldata 类中,以便可以访问该字符串。我希望当您在新页面上单击“确定”按钮时,它将标签更改为“状态:已连接”,因此当原始页面加载时标签将被更改。

所以在“确定”按钮中我添加了onclick="butOK_Click",然后如果我更改了 globaldata 类中的字符串。但是,我不知道如何返回该页面。添加PostBackUrl="Home/Index"(其中 Home/Index 是带有标签的开始页面)确实会返回到开始页面,但不会执行更改字符串的代码。

我怎样才能实现我想要的?

编辑:现在想想,我只想在执行一个实际连接到串口的函数后更改标签。我已经有了这个功能,它只需要让页面知道它已连接。

【问题讨论】:

  • 你能显示一些代码吗?是弹出新窗口还是重定向到新页面?
  • <asp:Button runat="server" ID="butConnect" Text ="Test" PostBackUrl="/Home/ComPort" /> 这会将其重定向到新页面。我使用 javascript 来获得一个新的窗口弹出窗口,但在我看来它要慢得多。但我真的不介意使用弹出窗口,如果这样会更好的话。

标签: c# asp.net


【解决方案1】:
Response.Redirect("~/Home/Index.aspx");

【讨论】:

  • 我不得不删除 .aspx 部分,但这实际上改变了标签。但是我编辑了我的第一篇文章:打开串口时需要更改它,这发生在另一个类的函数中。我可以在那里使用 Respone.Redirect 吗?
  • 没关系,我解决了。我可以只执行连接函数,在该函数内部更改字符串,然后在函数之后使用 Respone.Redirect。非常感谢!
  • 没问题,正在 atm 学习 asp.net 认证并阅读有关导航的内容,当我完成这一章时,我会回到这一点。但很高兴听到你解决了它!
猜你喜欢
  • 1970-01-01
  • 2012-01-16
  • 1970-01-01
  • 1970-01-01
  • 2017-07-30
  • 1970-01-01
  • 2021-06-24
  • 2014-04-14
  • 2013-12-22
相关资源
最近更新 更多