【问题标题】:viewing events in winforms在winforms中查看事件
【发布时间】:2011-03-28 14:49:51
【问题描述】:

如何选择在winforms设计器中双击控件时显示哪个事件?

例如,当我双击文本框时,winforms 会显示“TextChanged”事件。如果我想让它显示“GotFocus”事件,我该怎么做?我猜我会继承文本框并设置一些属性,但我找不到该属性。

【问题讨论】:

  • 我认为没有办法在不完全重写控件引发事件的方式的情况下覆盖默认的.NET 控件事件模式。是什么让您认为您只是设置了一个属性来更改事件结构。
  • 因为 VS 中的每个默认控件调用不同的事件。而且我很懒。无论如何,请参见下文。

标签: winforms


【解决方案1】:

通过从控件继承替换[DefaultEvent]属性:

using System;
using System.ComponentModel;
using System.Windows.Forms;

[DefaultEvent("GotFocus")]
class MyTextBox : TextBox { 
}

【讨论】:

  • 我希望我能给你投票两次,这对我今天真的很有帮助。
【解决方案2】:

默认事件是用DefaultEventAttribute 类定义的。因此,除非您有权访问控制代码,否则您无法更改现有代码。

通过继承,您可以使用该属性。

【讨论】:

    猜你喜欢
    • 2022-12-04
    • 1970-01-01
    • 2020-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-01
    • 2011-05-04
    相关资源
    最近更新 更多