C# 同时更新两个文本框?

标签 c# winforms user-interface

假设我有两个文本框,一个包含二进制数据,另一个是等效的 ASCII 数据。如果用户让我们说更改其中任何一个,我将如何同时更新另一个文本框,而无需按下按钮?

最佳答案

您必须防止无限循环(asciiTextBox 更改binaryTextBox.Text 从而更改asciiTextBox.Text 等.),你可以实现类似的东西:

private void asciiTextBox_TextChanged(object sender, EventArgs e) {
  binaryTextBox.TextChanged -= binaryTextBox_TextChanged;

  try {
    binaryTextBox.Text = BinaryText(asciiTextBox.Text);
  }
  finally {
    binaryTextBox.TextChanged += binaryTextBox_TextChanged; 
  }
}

private void binaryTextBox_TextChanged(object sender, EventArgs e) {
  asciiTextBox.TextChanged -= asciiTextBox_TextChanged;

  try {
    asciiTextBox.Text = AsciiText(binaryTextBox.Text);
  }
  finally {
    asciiTextBox.TextChanged += asciiTextBox_TextChanged;
  }
}

关于C# 同时更新两个文本框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36892086/

相关文章:

c# - 使用 Newtonsoft JSON 处理循环引用

c# - SMTP 服务器需要安全连接或客户端未通过身份验证 - 错误

c# - 如何从 richtextbox 打开多个 url

c# - 模拟 NHibernate 和 Linq

.net - 包含更多信息的 TreeView 节点

c++ - 在 C/C++ Windows API 中使用 Void 函数

jquery - 模仿jquery ui对话框按钮样式

c# - 如何在 C# 中创建可插入的 GUI 和 DLL

c# - C#中的多个并行任务不会缩短计算时间

java - 打开 Matlab/Simulink 文件并从 Java GUI 中选择模块