向“属性”窗口提供标准值列表的类型转换器

像省份这样的属性,为了方便用户填写,我们往往做成下拉框形式,一个省份里面又有城市,我们往往列出一部分,如果其中数据不符合用户要求的话,用户还可以自己输入,使用类型转换器转换器也可以做到这一点.

实现这一效果你需要重写以下方法,我们添加一个属性喜欢的游戏的名称
因为属性为String类型,可以直接从StringConverter 派生

示例三

 public class GameConverter : StringConverter 

    {
        //返回此对象是否支持可以从列表中选取的标准值集
        public override bool GetStandardValuesSupported(
                           ITypeDescriptorContext context)
        {
            return true;
        }
       //返回下拉框集合类
       public override StandardValuesCollection
                     GetStandardValues(ITypeDescriptorContext context)
       {
           return new StandardValuesCollection(new string[]{"传奇", 
                                                     "魔兽世界", 
                                                     "龙与地下城"});
       }
       //标准值的集合是否为独占列表
       //默认为flase,为true则表示无法修改列表值
       public override bool GetStandardValuesExclusive(
                           ITypeDescriptorContext context)
       {
           return false;
       }
    }

然后与相关属性关联起来

[TypeConverter(typeof(GameConverter))]
        [Description("喜欢的游戏")]
        public String Game
        {
            get
            {
                return game;
            }
            set
            {
                game = value;
            }
        }

好了,.下面我们看一下效果,如下图,你可以选择下拉框的值,也可以自己手动输入,跟枚举类型很相似,但枚举类型无法自己修改值.

转载于:https://www.cnblogs.com/kevin-wang/archive/2008/08/15/1268281.html

.net控件开发之类型转换器相关推荐

  1. asp.net控件开发基础系列

    本系列文章示例源码下载.各位如遇问题,请多查msdn,多利用网络.本人可能没时间一一回复,谢谢你们的支持,希望看到此文的人都能学好控件开发 http://www.cnblogs.com/Clingin ...

  2. 一起谈.NET技术,asp.net控件开发基础(9)

    写第五篇的时候,我一步步的加上元数据(特性),使得设计时效果更加好,如对复杂属性应用以下特性,使属性浏览器支持扩展/折叠效果,使你更加容易编辑子属性,但接着我又遇到了问题,所以必须去解决 1.认识默认 ...

  3. 今天你写控件了吗?----ASP.net控件开发系列

    今天你写控件了吗?----ASP.net控件开发系列之开篇 早段时间,同事之间很流行打CS,所以那段时间的问候变成了"今天你杀XX了吗?" 控 件开发也许是程序员最能发掘自己创造力 ...

  4. WINFORM控件开发 来源:博客园 作者:纶巾客

    (1)开篇 我本人不是专业的控件开发人员,只是在平常的工作中,需要自己开发一些控件.在自己开发WinForm控件的时候,没有太多可以借鉴的资料,只能盯着MSDN使劲看,还好总算有些收获.现在我会把这些 ...

  5. Asp.net控件开发学习笔记(三)-控件开发基础

    封装      在asp.net中,控件被分为两类.用户控件和自定义服务器控件.前者就是我们经常用来将一些可复用的内容封装成的.ascx文件.这里主要研究后者. 创建自定义服务器控件      创建自 ...

  6. 一起谈.NET技术,asp.net控件开发基础(18)

    本篇继续上篇的讨论,可能大家已经在使用asp.net2.0了,DataSource属性不再使用,而是跟数据源控件搭配使用.现在讨论的绑定技术都是基于1.1版本,先熟悉一下,本质上是一样的,这样一步步的 ...

  7. wpf控件开发基础(1)

    从现在开始,我将尝试写有关wpf控件开发相关的知识,把文章这对我来说很难,所以这个系列的文章在时间跨度上可能会拖的比较长.我希望我介绍是比较详细的,而不仅仅是一个简单的控件开发流程.我是一个真正的We ...

  8. 探讨微软ASP.NET AJAX控件开发技术(服务器端)

    一.简介 到目前为止,我们已经讨论了开发Ajax控件所涉及的客户端相关技术.现在,让我们来讨论此过程中与服务器端相关的一些技术. 需要说明的是,在[客户端]篇中我们的举例本质上仅是使用ASP.NET ...

  9. android 原理 组合控件_Android自定义控件进阶01-自定义控件开发套路与流程

    Android自定义控件进阶01-自定义控件开发套路与流程本章节为什么要叫进阶篇?(虽然讲的是基础内容),因为从本篇开始,将会逐渐揭开自定义View的神秘面纱,每一篇都将比上一篇内容更加深入,利用所学 ...

最新文章

  1. java类型精度排序,Java中BigDecimal精度和相等比较的坑
  2. AMD Zen 2新架构2018年初发布 再提升15%性能
  3. dlib win32
  4. php简单网页制作代码,用HTML和CSS以及JS制作简单的网页菜单界面的代码
  5. java枚举比较大小写_Spring 3.0 MVC绑定枚举区分大小写
  6. QQ,MSN,Skype在线客服代码
  7. 原生JavaScript轮播图效果实现
  8. Elasticsearch 搜索数组字段
  9. Fastformer:史上最强最快Transformer!清华、MSRA出品!
  10. S3C6410 时钟初始化
  11. java中抽象类与接口的不同之处
  12. 面试题 01.09. 字符串轮转
  13. php易宝支付扫码支付代码_谈谈扫码支付
  14. Hadoop大数据平台构建与应用
  15. 小朵机器人安卓叫什么_小朵机器人App
  16. Gateway一直访问本地
  17. 计算机唤醒休眠蓝屏,分享win10睡眠唤醒就蓝屏的解决办法
  18. 无心剑中译拜伦诗4首
  19. 二维数组主对角线与次对角线输出(C语言)
  20. 安腾处理器 oracle,英特尔展示下一代安腾处理器Poulson

热门文章

  1. 感应电动机的matlab仿真实验报告,异步电机矢量控制MATLAB仿真 实验 (2).doc
  2. mac终端之zsh和bash
  3. 波吉亚家族第一季/全集The Borgias 1迅雷下载
  4. 一个函数就能实现将正数变成对应的负数和将负数变成对应的正数
  5. 第四次工业革命:区块链
  6. 主谓宾定状补口诀及练习题
  7. nullspace matlab,用numpy计算零空间的有理基
  8. 易语言防破解防爆暗桩源码
  9. CF刷题(02)——难度1700~2000
  10. 对STDOUT_FILENO的理解