PreInit事件 与 Init事件: 怎么两个事件里都进行控件属性的初始化?————————————————————————

问题描述

以下是在网上找到的资料:——————————————————————————————————————————————————————1.PreInit()在这个页面级的事件中,所有在设计时创建的控件都将被用默认值做初始化。例如,如果你有一个Text属性值为“Hello”的TextBox控件,则此时这个属性被设置。我们也可以在这里动态的创建控件。2.Init()在所有控件都已初始化且已应用所有外观设置后触发,使用该事件来读取或初始化控件属性。——————————————————————————————————————————————————————怎么上面的资料里首先说在PreInit()事件里采用默认值设置控件属性,而在Init()事件里又说“使用该事件来初始化控件属性”?我就琢磨这个意思:是不是控件属性在PreInit()事件里采用开发阶段定义的默认值进行初始化,当在Init()事件里再设置控件属性值时,新设置的属性值会“覆盖”掉PreInit()事件里初始化的属性值?????是这个意思吗????

解决方案

本帖最后由 syncsdn10 于 2016-04-06 16:12:01 编辑
解决方案二:
1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();
解决方案三:
PreInit看文字就知道是预处理啊
解决方案四:
引用1楼shingoscar的回复:

1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();

大仙,你详细点说下啊,谢谢~~~~~~~~
解决方案五:
引用3楼syncsdn10的回复:

Quote: 引用1楼shingoscar的回复:
1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();

大仙,你详细点说下啊,谢谢~~~~~~~~

看起来非常清楚了
解决方案六:
引用4楼FoxDave的回复:

Quote: 引用3楼syncsdn10的回复:
Quote: 引用1楼shingoscar的回复:
1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();

大仙,你详细点说下啊,谢谢~~~~~~~~

看起来非常清楚了

第一步:new个对象,第二步:PreInit(),请问此步的PreInit(),是个事件还是个什么东东的构造方法?另外:第二步PreInit()结束后应该会紧接着Init(),怎么之间又插进来一个obj.property=yyy;?
解决方案七:
引用5楼syncsdn10的回复:

Quote: 引用4楼FoxDave的回复:
Quote: 引用3楼syncsdn10的回复:
Quote: 引用1楼shingoscar的回复:
1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();

大仙,你详细点说下啊,谢谢~~~~~~~~

看起来非常清楚了

第一步:new个对象,第二步:PreInit(),请问此步的PreInit(),是个事件还是个什么东东的构造方法?另外:第二步PreInit()结束后应该会紧接着Init(),怎么之间又插进来一个obj.property=yyy;?

第一步:new个对象,第二步:PreInit(),即执行我们写的PreInit()方法,第三步:obj.property=yyy;其中yyy是哪里来的?第四步:执行我们写的init()方法。
解决方案八:
引用6楼syncsdn10的回复:

Quote: 引用5楼syncsdn10的回复:
Quote: 引用4楼FoxDave的回复:
Quote: 引用3楼syncsdn10的回复:
Quote: 引用1楼shingoscar的回复:
1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();

大仙,你详细点说下啊,谢谢~~~~~~~~

看起来非常清楚了

第一步:new个对象,第二步:PreInit(),请问此步的PreInit(),是个事件还是个什么东东的构造方法?另外:第二步PreInit()结束后应该会紧接着Init(),怎么之间又插进来一个obj.property=yyy;?

第一步:new个对象,第二步:PreInit(),即执行我们写的PreInit()方法,第三步:obj.property=yyy;其中yyy是哪里来的?第四步:执行我们写的init()方法。

第一步,new出所有的控件第二步,触发PreInit事件第三步,给刚才new出的控件设置初始值第四步,触发Init事件
解决方案九:
引用7楼shingoscar的回复:

Quote: 引用6楼syncsdn10的回复:
Quote: 引用5楼syncsdn10的回复:
Quote: 引用4楼FoxDave的回复:
Quote: 引用3楼syncsdn10的回复:
Quote: 引用1楼shingoscar的回复:
1、XXXobj=newXXX();2、PreInit();3、obj.property=yyy;4、Init();

大仙,你详细点说下啊,谢谢~~~~~~~~

看起来非常清楚了

第一步:new个对象,第二步:PreInit(),请问此步的PreInit(),是个事件还是个什么东东的构造方法?另外:第二步PreInit()结束后应该会紧接着Init(),怎么之间又插进来一个obj.property=yyy;?

第一步:new个对象,第二步:PreInit(),即执行我们写的PreInit()方法,第三步:obj.property=yyy;其中yyy是哪里来的?第四步:执行我们写的init()方法。

第一步,new出所有的控件第二步,触发PreInit事件第三步,给刚才new出的控件设置初始值第四步,触发Init事件

不好意思我再问一下啊,如果ASPX文件中有一个textbox服务器控件,<asp:TextBoxID="TextBox1"runat="server"Text="22"/>请问值22是在你说的“第一步,new出所有的控件”这步赋值还是在“第三步,给刚才new出的控件设置初始值”这步赋值?
解决方案十:
实际的步骤应该不是像这样线性的Text究竟何时赋值你不应该关心asp的说明里只是保证当init事件触发时,TextBox1.Text=="22"

时间: 2025-01-21 07:37:32

PreInit事件 与 Init事件: 怎么两个事件里都进行控件属性的初始化?————————————————————————的相关文章

timer-为什么在Forms.Timer的事件处理程序里,界面控件依然是不可访问的?

问题描述 为什么在Forms.Timer的事件处理程序里,界面控件依然是不可访问的? 为什么在System.Windows.Forms.Timer的事件处理程序里,界面控件依然是不可访问的? 为什么在System.Windows.Forms.Timer的事件处理程序里,界面控件依然是不可访问的? 为什么在System.Windows.Forms.Timer的事件处理程序里,界面控件依然是不可访问的? 解决方案 自己结贴了.是VS软件的问题,重启下居然好了,抓狂了大半天. 解决方案二: 是跨线程调

wpf控件属性怎么没有事件按钮

问题描述 wpf控件属性怎么没有事件按钮 如图window窗体控件里面属性里面有这个快速添加事件的按钮,wpf里面有没有类似的呢,我找不到,求教高手,非常感谢. 解决方案 也是有的,只是界面略有不同,你仔细找找. 解决方案二: WPF事件是有的,但和以前的winForm事件机制不同而已(VS属性中没有了事件项目)

imageview-Android关于改变ListView里面的ImageView控件的背景图出现无法触发点击事件的问题

问题描述 Android关于改变ListView里面的ImageView控件的背景图出现无法触发点击事件的问题 问题说明:我使用AudioRecord进行录音,想要点击ImageView开始录音,然后根据音量大小设置ImageView背景图 ,由于ImageView是ListView的Item里面的一个子控件,于是我开启一个线程,使Thread.sleep(100);后 notifyDataSetChanged(),这时问题就出现了,当我再次点击ImageView想要录音暂停时,发现有时候点击事

~求教 gridview中 如何实现两个模板列中 textbox控件的 实时变换呢 ? 类似TextChanged

问题描述 gridview中如何实现两个模板列中textbox控件的实时变换呢?类似TextChanged比如在模板列中有两个控件textbox1和textbox2如何实现当textbox1的值发生变化以后textbox2的值马上就变成textbox1的值乘以二就是下面的代码怎么能够在textbox1的值发生变化后改变焦点时马上实现呢??多谢各位大侠~for(i=0,i<10,i++){TextBoxtextbox1=(TextBox)GridView1.Rows[i].Cells[2].Fin

请问,在同一页面,不能分两次为多个linkbutton控件循环赋值么,第一次循环可以,第二次循环就报错了,在线等,急

问题描述 出错的是我第二次用循环赋值如果把这第二段隐藏那么第一段循环赋值还是运行正常的下面是代码.谢谢大家.第一次的循环的linkbutton的id是LKdalei1,LKdaleiL2,Kdalei3,LKdalei4·····共20个第二次的循环的linkbutton的id是LKxiaolei1,LKxiaolei2,LKxiaolei3·······共8个我的select语句是没有问题的,在线等,急************第一次循环***************第一次循环*********

android 自定义adapter中,在监听事件里修改控件属性

问题描述 ViewHolderviewHolder=null;if(null==convertView){viewHolder=newViewHolder();....................viewHolder.bbs_like_img=(ImageView)convertView.findViewById(R.id.bbs_like_img);}else{viewHolder=(ViewHolder)convertView.getTag();}监听点击事件,修改bbs_like_im

关于gridview的两个事件rowcommand和rowdatabind

问题描述 比如说我想实现一个如下的功能:GridView实现删除时弹出确认对话框:我见过一种写法是写在rowdatabind事件里,难道不可以写在rowcommand事件中吗?这两个事件有什么区别 解决方案 解决方案二:GridView.RowDataBound事件在GridView控件中将数据行绑定到数据时发生:呈现GridView控件之前,该控件中的每一行必须绑定到数据源中的一条记录.将某个数据行(用GridViewRow对象表示)绑定到GridView控件中的数据以后,将引发RowData

ASP.NET用户控件说明和添加事件

在WEB开发中经常有一些代码是在很多地方重复出现的,象导航栏.用户登录/注册和首页上面的一些固定栏目等.这些可重用的代码我们可以把它写成一个通用模块供需要的地方来引用,这样做即节省了开发时间还方便以后的维护. 在ASP.NET的web编程中提供了一种叫做"用户控件"可以帮助我们完成这种做法,其文件扩展名是".ascx",由于ascx文件是用来插入ASPX页面中使用的,而一个ASPX窗体只能包含一个<form>标志,所以ascx用户控件不能包含<fo

动态创建控件支持事件响应并可保存与读取

VC++6.0中创建动态控件是比较偏离基础的知识,也有一定的难度.它的完整功能是要动态创建控件后再动态响应控件中的事件,两者全部做到才算完整. 这里我将展示一个完整的动态控件示例,它可以动态创建控件,然后再动态响应控件事件,并可以保存控件信息至ini配置文件,然后再根据ini文件读取出控件信息来动态创建控件.相信它能够解决你在动态控件中所遇到的许多问题. 当然,动态控件的方法有许多种,我展示的只是给我认为较好的. 这里以VC++6.0创建对话框工程为例,添加菜单,分别添加子项按钮,文本框,标签.