转发按键事件

2024-05-14

我有一个文本框,想从另一个表单转发按键事件。

到目前为止我已经有了我的表格:

private readonly Action<KeyPressEventArgs> m_KeyPress;

public KeyboardForm( Action<KeyPressEventArgs> keyPress )
{
  m_KeyPress = keyPress;
}

protected override void OnKeyPress( KeyPressEventArgs e )
{
  m_KeyPress( e );
  base.OnKeyPress( e );
}

以及一个派生的 TextBox,它初始化 Form:

var keyboardForm = new KeyboardForm( OnKeyPress );
keyboardForm.Show();

现在,OnKeyPress 方法将按预期调用(先调用 Form,然后调用 TextBox)。但尽管如此,什么也没有发生......当我按“a”时,我期望“a”出现在我的文本框中......

有谁知道这里有什么问题吗?

它不适用于KeyDown,也附加到常规暴露事件KeyPress也没有帮助我。我认为问题在于明确的调用OnKeyPress。允许吗?


Form1:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        Form2 f = new Form2();
        f.mEvent += new Form2.TestEvent(f_mEvent);
        f.Show();
    }

    void f_mEvent(KeyPressEventArgs e)
    {
        textBox1.Text += e.KeyChar;
    }
}

Form2:

public partial class Form2 : Form
{
    public delegate void TestEvent(KeyPressEventArgs e);
    public event TestEvent mEvent;

    public Form2()
    {
        InitializeComponent();
    }

    protected override void OnKeyPress(KeyPressEventArgs e)
    {
        if (mEvent != null)
        {
            mEvent(e);
        }
        base.OnKeyPress(e);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

转发按键事件 的相关文章

  • 以文化中立的方式将字符串拆分为单词

    我提出了下面的方法 旨在将可变长度的文本拆分为单词数组 以进行进一步的全文索引处理 删除停止词 然后进行词干分析 结果似乎不错 但我想听听关于这种实现对于不同语言的文本的可靠性的意见 您会建议使用正则表达式来代替吗 请注意 我选择不使用 S
  • 动态加载程序集的应用程序配置

    我正在尝试将模块动态加载到我的应用程序中 但我想为每个模块指定单独的 app config 文件 假设我的主应用程序有以下 app config 设置
  • ASP.NET MVC:这个业务逻辑应该放在哪里?

    我正在开发我的第一个真正的 MVC 应用程序 并尝试遵循一般的 OOP 最佳实践 我正在将控制器中的一些简单业务逻辑重构到我的域模型中 我最近一直在阅读一些内容 很明显我应该将逻辑放在域模型实体类中的某个位置 以避免出现 贫血域模型 反模式
  • 用于检查类是否具有运算符/成员的 C++ 类型特征[重复]

    这个问题在这里已经有答案了 可能的重复 是否可以编写一个 C 模板来检查函数是否存在 https stackoverflow com questions 257288 is it possible to write a c template
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • 从Web API同步调用外部api

    我需要从我的 Web API 2 控制器调用外部 api 类似于此处的要求 使用 HttpClient 从 Web API 操作调用外部 HTTP 服务 https stackoverflow com questions 13222998
  • 用于登录 .NET 的堆栈跟踪

    我编写了一个 logger exceptionfactory 模块 它使用 System Diagnostics StackTrace 从调用方法及其声明类型中获取属性 但我注意到 如果我在 Visual Studio 之外以发布模式运行代
  • 在 Windows 窗体中保存带有 Alpha 通道的单色位图会保存不同(错误)的颜色

    在 C NET 2 0 Windows 窗体 Visual Studio Express 2010 中 我保存由相同颜色组成的图像 Bitmap bitmap new Bitmap width height PixelFormat Form
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • 将 VSIX 功能添加到 C# 类库

    我有一个现有的单文件生成器 位于 C 类库中 如何将 VSIX 项目级功能添加到此项目 最终目标是编译我的类库项目并获得 VSIX 我实际上是在回答我自己的问题 这与Visual Studio 2017 中的单文件生成器更改 https s
  • 将多个表映射到实体框架中的单个实体类

    我正在开发一个旧数据库 该数据库有 2 个具有 1 1 关系的表 目前 我为每个定义的表定义了一种类型 1Test 1Result 我想将这些特定的表合并到一个类中 当前的类型如下所示 public class Result public
  • 如何在整个 ASP .NET MVC 应用程序中需要授权

    我创建的应用程序中 除了启用登录的操作之外的每个操作都应该超出未登录用户的限制 我应该添加 Authorize 每个班级标题前的注释 像这儿 namespace WebApplication2 Controllers Authorize p
  • 如何在 C 中调用采用匿名结构的函数?

    如何在 C 中调用采用匿名结构的函数 比如这个函数 void func struct int x p printf i n p x 当提供原型的函数声明在范围内时 调用该函数的参数必须具有与原型中声明的类型兼容的类型 其中 兼容 具有标准定
  • 如何使用 C# / .Net 将文件列表从 AWS S3 下载到我的设备?

    我希望下载存储在 S3 中的多个图像 但目前如果我只能下载一个就足够了 我有对象路径的信息 当我运行以下代码时 出现此错误 遇到错误 消息 读取对象时 访问被拒绝 我首先做一个亚马逊S3客户端基于我的密钥和访问配置的对象连接到服务器 然后创
  • 对现有视频添加水印

    我正在寻找一种用 C 在视频上加水印的方法 就像在上面写文字一样 图片或文字标签 我该怎么做 谢谢 您可以使用 Nreco 视频转换器 代码看起来像 NReco VideoConverter FFMpegConverter wrap new
  • 向现有 TCP 和 UDP 代码添加 SSL 支持?

    这是我的问题 现在我有一个 Linux 服务器应用程序 使用 C gcc 编写 它与 Windows C 客户端应用程序 Visual Studio 9 Qt 4 5 进行通信 是什么very在不完全破坏现有协议的情况下向双方添加 SSL
  • 如何将带有 IP 地址的连接字符串放入 web.config 文件中?

    我们当前在 web config 文件中使用以下连接字符串 add name DBConnectionString connectionString Data Source ourServer Initial Catalog ourDB P
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • 如何防止用户控件表单在 C# 中处理键盘输入(箭头键)

    我的用户控件包含其他可以选择的控件 我想实现使用箭头键导航子控件的方法 问题是家长控制拦截箭头键并使用它来滚动其视图什么是我想避免的事情 我想自己解决控制内容的导航问题 我如何控制由箭头键引起的标准行为 提前致谢 MTH 这通常是通过重写

随机推荐

  • 如何在 PHP 中使用 RS256 签署 X.509 证书?无法获取有效指纹...x5t

    我已经实现了 JWT 令牌生成器库Here https github com F21 jwt blob master JWT JWT php 并且我能够获得 RS256 令牌 有效负载 但我对标题数据有疑问 我需要一个标头值 x5t 该标头
  • 在 Magento 中获取购物车详细信息

    我想通过使用 Magento 获取购物车详细信息getQuote功能 我怎样才能做到这一点 cart Mage getModel checkout cart gt getQuote 当我打印 cart页面停止执行并显示空白页面 但是当我写的
  • Azure 网站中的 404 处理

    我在 Azure 上有一个 MVC 网站 我已经编写了一个控制器操作来代表资源 该操作应该返回 HTTP 404 但正文内容应该是一些 HTML 我在其中解释了 404 的原因 这是作为一个标准操作实现的 该操作设置Response Sta
  • 如何在 Safari 上打开本地 html 文件?

    我想打开本地 html 文件Safari集成到我的Swift 3应用 我知道如何使用网址来做到这一点 这是我用来执行此操作的代码 let encodedString url addingPercentEncoding withAllowed
  • Docx 缺少属性

    我正在尝试使用 python 中的 docx 库来考虑 word 文档 问题是 无论我导入什么 我都会收到有关 无属性 的错误消息 例如 文档 from docx import Document 给出输出 cannot import nam
  • 如何使用 solrnet 在 solr 中使字段搜索不区分大小写

    在 solr 模式中我有如下字段
  • 在 php 中将单词转换为数字 II

    这里有一个很棒的功能在 PHP 中将单词转换为数字 https stackoverflow com questions 1077600 converting words to numbers in php来自埃尔约博 但我有一个问题 字符串
  • 将 C# 代码转换为 F#(if 语句)

    我想知道如何转换此代码逐行从 C 到 F 我不想使用任何类型的 F 习惯用法或类似的东西 我想了解如何直接映射C 的构造到 F 这是 C 代码 requires l Length gt 0 int GetMinimumValue List
  • 在 dart 的 MultipartRequest 中添加授权标头

    我在用多部分请求 https pub dartlang org documentation http latest http MultipartRequest class html在 Dart 中以便将文件上传到 API 但是我需要在我的请
  • 无法让 Visual Studio 诊断工具工作

    我在启动 Visual Studio 2015 含更新 3 中的诊断工具时遇到一些问题 我在调试模式下构建并启动一个项目 诊断工具窗口会弹出并显示文本 启动诊断工具 大约十分钟后 该文本消失 但 诊断工具 窗口仍然存在 上面没有任何内容 诊
  • 费率计费计算

    Azure 价目表 API 返回 MeterRates 字段 请参阅文档 https msdn microsoft com en US library azure mt219004 aspx Azure 使用情况聚合给出了数量 请参阅文档
  • Python。短语表示,如何改变?

    我不知道这个短语中存在的编码是什么 我也想知道这个问题的答案 主要是 我想改变我的措辞 例如 你好世界 变成你好 20世界 0A 老天啊 变成ol C3 A1 20mundo 0A 0A 我想要一个 python 解决方案 如果我有 gt
  • 通过 Apps 脚本强制刷新公式

    有时 更改单元格的值时 电子表格中的公式不会自动刷新 并且单元格上会出现注释以选择该单元格 然后按 CTRL SHIFT E 强制重新加载公式 我想从 Apps 脚本调用此重新加载函数 有没有办法用 Apps 脚本来做到这一点 我尝试了 S
  • 如何删除 WSO2 Identity Server 中的租户?

    在 v 4 6 0 中 我们无法通过 UI 删除 tenat 只能禁用 但是 我看到 TenantMgtAdminService 肥皂服务上有一个 deleteTenant 方法 我尝试调用此服务 但收到错误消息 从日志来看 它有 org
  • Android中将JSON数据存储到本地数据库

    好的 我创建了一个应用程序 它使用 JSON 从我的服务器检索数据 现在我想将检索到的数据存储在手机的本地存储 数据库中 我该怎么做 我是android编程新手 这是我从服务器收到的 JSON messages id 44 issender
  • 使用 javascript 获取焦点元素的 id

    我有一个包含许多锚元素的 Html 页面 这个单个 Html 页面包含许多 div 部分 一次仅显示一个部分 并且特定于该部分的锚点将聚焦 该 html 还包含一个用于打开弹出窗口的 div 当此弹出窗口打开特定于此的锚点时 将聚焦 现在我
  • WPF TextBox:如何将默认绑定模式更改为 OneWay?

    最初 我有以下代码
  • SQL/C# - UPSERT 上的主键错误

    UPDATE 简化的问题 从问题中删除了 C 在以下情况下 如何编写一个可以识别两行相同的 UPSERT 看看怎么有一个 b 退格键 在那里编码 奇怪的小字符 SQL 将它们视为相同 虽然我的 UPSERT 将此视为new data并在应该
  • xcode“将源编译为”覆盖特定文件

    我有一个项目 必须将 编译源为 值设置为 Objective C 不 根据文件类型 在我的主项目中不起作用 我从框架 特别是 OpenFeint 获得的文件有问题 该文件在编译为 Objective C 时出现编译错误 error poin
  • 转发按键事件

    我有一个文本框 想从另一个表单转发按键事件 到目前为止我已经有了我的表格 private readonly Action