我正在创建一个自定义控件,它上面有一些属性。问题是如果没有设置这些属性并且它们没有合适的默认值,则控件无效。
如何确保在页面中包含它们时在ASP.NET标记中设置它们?是否有某种可以挂钩的验证事件?
例如,以下控件:
public class TestControl: Control
{
public string Source { get; set; }
}
在设计/编译时,如果使用控件而不设置Source属性,则应该出错:
<Prototype:TestControl runat="server"></Prototype:JavaScriptInclude>
我知道我可以在运行时检查这个,但是如果将验证推迟到运行时,可能会忽略一些早期检查会很好。
答案 0 :(得分:1)
简短的回答:你做不到。
如果未设置属性,则控件应具有默认行为。只有这样才能避免在aspx
页面中添加控件,并在代码隐藏中执行所有操作,您将拥有构造函数等默认语言结构。但我认为你知道这条道路: - )