Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Asp.net控件生命周期或事件的哪个阶段解析客户端id_C#_Asp.net_Custom Controls_Custom Server Controls_Checkboxlist - Fatal编程技术网

C# 在Asp.net控件生命周期或事件的哪个阶段解析客户端id

C# 在Asp.net控件生命周期或事件的哪个阶段解析客户端id,c#,asp.net,custom-controls,custom-server-controls,checkboxlist,C#,Asp.net,Custom Controls,Custom Server Controls,Checkboxlist,我开发了一个服务器控件,它是从checkboxlist继承的自定义控件,并实现了IScriptControl我使用控件id,clientId在控件构造函数期间设置一些用于在客户端呈现的属性,但当我调试它们时,它们都是空的。所以应该有什么问题,是什么?页面有一个InitComplete事件,可以在控件之外使用,但是控件本身看起来在生命周期中只有Init和加载事件,足够早地利用其属性 public override void Pre_Render() { //control.ClientID an

我开发了一个服务器控件,它是从checkboxlist继承的自定义控件,并实现了
IScriptControl
我使用控件
id
clientId
在控件构造函数期间设置一些用于在客户端呈现的属性,但当我调试它们时,它们都是空的。所以应该有什么问题,是什么?

页面有一个
InitComplete
事件,可以在控件之外使用,但是控件本身看起来在生命周期中只有
Init
加载
事件,足够早地利用其属性

public override void Pre_Render()
{

//control.ClientID and control.ID are available now

}
如果在控件内部设置其他属性,我可能会覆盖控件的OnLoad方法:

protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);
    //do your property setting here
}

在Pre_Render阶段,您可以获得实际的clientID和ID属性

public override void Pre_Render()
{

//control.ClientID and control.ID are available now

}

我不明白,你把我弄糊涂了。我必须上移到第页才能设置它们吗?或者重写控件init事件并将其设置在那里