社区
.NET Framework
帖子详情
自定义控件的问题~帮顶有分!
xiyun
2006-06-04 11:56:35
我从一个控件派生了一个自定义控件,在构造函数里添加了一些代码:比如说我继承的是ComboBox,我在派生的类的构造函数里对ComboBox添加了2项选项,然后我将这个自定义控件放到Form上后,在form的构造函数里又自动的添加了这2个选项,并且,我只要在设计器里每对这个控件作出改动,就会自动的又添加2个选项。。。
我想知道如何能使我在构造函数里添加的选项不会在Form里又再次被添加
...全文
475
26
打赏
收藏
自定义控件的问题~帮顶有分!
我从一个控件派生了一个自定义控件,在构造函数里添加了一些代码:比如说我继承的是ComboBox,我在派生的类的构造函数里对ComboBox添加了2项选项,然后我将这个自定义控件放到Form上后,在form的构造函数里又自动的添加了这2个选项,并且,我只要在设计器里每对这个控件作出改动,就会自动的又添加2个选项。。。 我想知道如何能使我在构造函数里添加的选项不会在Form里又再次被添加
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiyun
2006-06-17
打赏
举报
回复
问题算是解决了
用ShouldSerrilizeItems这个属性解决的,不过有个后遗症。。。不能通过设计器修改那个被重载的属性了
结贴了
mhxcy
2006-06-14
打赏
举报
回复
顶
allismine
2006-06-13
打赏
举报
回复
感觉是因为每次刷新造成的,考虑不让这个地方刷新或者在Page_load中,对这段代码放在Page.IsPostedBack等于false中,那样只有在初始化该页面时才加载自定义控件,而在刷新或者IE返回等不加载该控件。
tdtdtdtdtd123
2006-06-11
打赏
举报
回复
帮顶
lalac
2006-06-10
打赏
举报
回复
其实原因是这样的,微软的Designer在构造ComboBox时会判断当前的Items是否为默认值,通常可以使用DefaultValue或者ShouldSerrilizeItems来得到这个状态。另外,在ComboBox的ObjectCollection里面还有一些其他操作,也会影响IDE生成代码。
回到楼主的问题,当楼主在构造函数里添加了几项到Items里之后,默认情况下,IDE会自己在生成Code时把现有Items里的项再加一遍,而构造函数还是会被执行,这样Items里就出现了两遍所添加的项了。
处理办法有:
1、修改Items的DefaultValue或者重写ShouldSerrilizeItems方法,让他们在有你添加的项时返回Flase。
2、如果上面的还不能达到结果,建议重写Items属性和ObjectCollection类,这样就可以完全自己控制代码生成了。
Ivony
2006-06-09
打赏
举报
回复
与ASP有什么关系?
在构造函数里面,对象还没构造好,谁能给一个属性赋值,所以DesignMode属性只能在OnInit等方法内使用。
ToolboxDataAttribute可以控制你的控件拖到设计器上自动生成的代码。
amandag
2006-06-09
打赏
举报
回复
不懂,帮顶
xiyun
2006-06-09
打赏
举报
回复
lvony。。我的不是asp的
skyline81
2006-06-09
打赏
举报
回复
帮顶
tdtdtdtdtd123
2006-06-07
打赏
举报
回复
up budong
Ivony
2006-06-06
打赏
举报
回复
不清楚为什么会有这样的需求,其实把这个操作放到一个方法中去就肯定不会出问题了。1.1里面也通过判断HttpContext.Current是否为空,2.0里面判断DesignMode属性都能知道是不是在设计期,在设计期跳过这些代码也是一个办法……
Ivony
2006-06-06
打赏
举报
回复
尝试重写OnInit方法,在里面加入项。
ilovejolly
2006-06-06
打赏
举报
回复
mark
Ivony
2006-06-06
打赏
举报
回复
如果你是这种需求,可以尝试用ToolboxDataAttribute看看能不能解决问题。
Ivony
2006-06-06
打赏
举报
回复
楼上的,DesignMode 这个属性完全无效。。。
别告诉我你在构造函数里面判断……自己想一下这个属性被赋值的时机。
xiyun
2006-06-06
打赏
举报
回复
楼上的,DesignMode 这个属性完全无效。。。
我放到构造函数的目的是为了在其他地方直接从ToolBox里拉出来放到界面上就可以了,不用再写任何代码了。
BlueDog
2006-06-05
打赏
举报
回复
可以用静态构造函数添加。不过你这两项是不是所有该控件全部有的呀,如果是就没问题
KylinChina
2006-06-05
打赏
举报
回复
up
elivehai
2006-06-05
打赏
举报
回复
帮顶了。。
liminlovemama
2006-06-05
打赏
举报
回复
不明白....郁闷...
加载更多回复(6)
Glide图片框架遇到的小坑
在项目中使用了谷歌Glide图片加载框架,在Listview中我的是一个类似新闻资讯一样的列表,遇到了几个我
问题
再次记录一下! 一 在Fragment中使用Listview的addHeaderView()的方法添加新闻的Banner轮换页时,在对listview设置OnItemClickListener事件的时候,我们需要loadMoreListView.getHeaderViewsCoun
Glide踩小坑
最近使用Glide这个框架可没少采坑,这里先记录下踩过的坑(谁让这个框架太牛逼内,我们还带用哈),不懂源码真可怕,等以后看过Glide的源码再回来回味下。 坑1 、 VLayout中使用GridLayoutHelper 加载 item ,图片错位。 部分源码 Glide .with(context) .load(entity...
关于使用Glide的一点小坑
前言:Glide很强大,这个不用多说,谁用谁知道。 在实际项目中,我们的一些错误做法可能会辜负这个强大的图片加载库。 就比如:后台传的商品图片品质太差,用Glide缓存的时候会出现绿色背景,一顿百度谷歌之后,不少人给出了完美的解决思路:就是设置图片的解码格式 。从rgb-565—>rgb-8888。(如果不会自行百度,反正我是不建议) 之前首页图片少还没感到什么,但是自从有了个图片群的功能(全展
记录Android开发小坑之Glide请求网络图片无法显示
Blog快览一、
问题
描述二、
问题
解决 一、
问题
描述 开发项目在使用Glide过程中,使用了RxJava+Retrofit+Okhttp组合实现网络请求,在请求数据并获取某张图片Url使用Glide将其展示到页面时,发现图片没有展示到ImageView控件中,发现直接显示了一张error占位图: .with(this) .load(it.result[1].data.header.icon) .placeholder(R.drawabl
图片加载显示框架Glide使用
开发应用,经常需要加载网络图片来显示。 如果自己去下载后显示出来,遇到大量的图片显示,处理有些麻烦,缓存也可能会很大。 当然这些都可以想办法处理,但是需要耗费很多时间。 所以有很多第三方的框架,实现了这些功能,能自动加载图片并显示,也能控制缓存大小,甚至可以根据界面的生命周期自动加载和暂停,使用非常方便。 以前使用过Picasso框架好长一段时间,但是非常小的概率会测到图片显示一半的情况。...
.NET Framework
17,748
社区成员
24,324
社区内容
发帖
与我相关
我的任务
.NET Framework
.NET技术 .NET Framework
复制链接
扫一扫
分享
社区描述
.NET技术 .NET Framework
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章