概述
好的,我已经在谷歌上搜索过了,预计会得到一个明确的NO!!但是我认为我应该问一下,因为我知道有时候人们的头脑中存在着一些奇怪的小知识宝石^_^
我在读书时通过一些练习,学习用户控件。我已经拼凑出一个控件,并想设置它的默认事件 (在之前的控件中也这样做过),这样当我双击它时,创建的默认事件就是我指定的事件。
注意: 这是标准的用户控件 (.ascx), 不是 自定义渲染控件。
当前代码
这是类和事件的定义:
[System.ComponentModel.DefaultEvent("OKClicked")]
public partial class AddressBox : System.Web.UI.UserControl
{
public event EventHandler OKClicked;
当前结果
现在,当我双击ASPX页面上的控件时,会创建以下内容:
protected void AddressBox1_Load(object sender, EventArgs e)
{
}
不太符合我的预期!所以,我的问题是:
是否可以为用户控件定义DefaultEvent?这是一种hack吗?如果它[不]被支持,是否有原因?
副注意事项:我们如何在代码中添加下划线?我似乎无法放置和转义字符?