C# 如何清除文本框? 我在java和C++中有相当不错的背景,但是我在C语言中正在努力做一些琐碎的事情。我有两个文本框:消息框和发送框。我想将文本从SenderBox发送到MessageBox(这很容易),但一旦完成,我想清除SenderBox。以下基本上是按Enter键发送文本时激发的代码: string temp = SenderBox.Text; SenderBox.Text = "cleared"; MessageBox.Text = temp;

C# 如何清除文本框? 我在java和C++中有相当不错的背景,但是我在C语言中正在努力做一些琐碎的事情。我有两个文本框:消息框和发送框。我想将文本从SenderBox发送到MessageBox(这很容易),但一旦完成,我想清除SenderBox。以下基本上是按Enter键发送文本时激发的代码: string temp = SenderBox.Text; SenderBox.Text = "cleared"; MessageBox.Text = temp;,c#,wpf,windows-8,C#,Wpf,Windows 8,大多数编程语言都有点程序化,或者至少以某种有序的方式执行。为什么Windows 8应用程序的C#/WPF似乎违反了这一标准?首先,您希望将temp设置为等于SenderBox的值。如果查看代码,temp不应等于“已清除”,除非这是SenderBox包含的内容。在这一点上(第1行),它没有。我试图创建一个send(msg)函数来取消对奇怪字符串的引用,但这并没有改变任何事情。以下代码按预期运行: string x = "abc"; string y = x; y = "123"; MessageB

大多数编程语言都有点程序化,或者至少以某种有序的方式执行。为什么Windows 8应用程序的C#/WPF似乎违反了这一标准?首先,您希望将temp设置为等于
SenderBox
的值。如果查看代码,
temp
不应等于“已清除”,除非这是
SenderBox
包含的内容。在这一点上(第1行),它没有。我试图创建一个
send(msg)
函数来取消对奇怪字符串的引用,但这并没有改变任何事情。以下代码按预期运行:

string x = "abc";
string y = x;
y = "123";
MessageBox.Text = x;

有人能启发我吗?不确定这里发生了什么。

如果您不想切换这两个框的内容,为什么不:

MessageBox.Text = SenderBox.Text;
SenderBox.Text = "cleared";

如果您不想切换这两个框的内容,为什么不:

MessageBox.Text = SenderBox.Text;
SenderBox.Text = "cleared";

因为它不工作的原因与我的代码不工作的原因相同。有人已经提出了这个建议,然后撤销了他们的答案。。。谢谢您的尝试。好吧,我建议
MessageBox.Text=string.Copy(SenderBox.Text)警告说,如果这样做有效,那就是一个框架错误,因为他们已经指定字符串应该是不可变的。因为它不起作用的原因与我的代码不起作用的原因相同。有人已经提出了这个建议,然后撤销了他们的答案。。。谢谢您的尝试。好吧,我建议
MessageBox.Text=string.Copy(SenderBox.Text)
需要注意的是,如果这样做有效,那将是一个框架错误,因为他们指定字符串应该是不可变的。您的代码对我有效,我无法复制您的问题,您使用哪个事件来处理enter键?确保它不会被解雇两次。这真的不应该发生。。。你的代码对我有效,我不能复制你的问题,你用哪个事件处理回车键?确保它不会被解雇两次。这真的不应该发生。。。它在这里也起作用。