ComponentArt控件分析之ComboBox(2)

一.来看下数据数据解析

首先后台先生成一种数据格式,这种格式跟JSON差不多(不知道为什么不用JSON),查看HTML源代码

ComboBox2.Data = [[['Text','a'],['Value','b']],[['Text','b'],['Value','c']],[['Text','c'],['Enabled',0],['Value','b']],[['CssClass','comboItemHover'],['Text','d'],['Value','c'],['Id','ComboBoxItem1']],[['Text','a'],['Value','b']],[['Text','b'],['Value','c']],[['Text','c'],['Enabled',0],['Value','b']],[['CssClass','comboItemHover'],['Text','d'],['Value','c'],['Id','ComboBoxItem2']],[['Text','a'],['Value','b']],[['Text','b'],['Value','c']],[['Text','c'],['Enabled',0],['Value','b']],[['CssClass','comboItemHover'],['Text','d'],['Value','c'],['Id','ComboBoxItem3']],[['Text','a'],['Value','b']],[['Text','b'],['Value','c']],[['Text','c'],['Enabled',0],['Value','b']],[['CssClass','comboItemHover'],['Text','d'],['Value','c'],['Id','hello']]];

2.需要定义一个ComboBoxItem对象(自然要定义数据集合类型了),其中js也要定义,数据结构采用HashTable,查找速度快.其中定义了一个JavaScriptArray用来转换数据

  private string BuildStorage()
  {
   JavaScriptArray arNodeList = new JavaScriptArray();
  
   foreach (ComboBoxItem oItem in this.Items)
   {
    ProcessItem(oItem, arNodeList);
   }
    string strList=arNodeList.ToString();
    return strList;
  }
  private void ProcessItem(ComboBoxItem oItem, ArrayList arNodeList)
  {
  
   ArrayList itemProperties = new ArrayList();
   foreach (string propertyName in oItem.Properties.Keys)
   {
    switch (propertyName.ToLower())
    {
     // bools
     case "enabled": itemProperties.Add(new object[] { "Enabled", oItem.Enabled }); break;
  
     // normal string handling
     default:
      itemProperties.Add(new object[] { propertyName, oItem.Properties[propertyName] });
      break;
    }
   }
   arNodeList.Add(itemProperties);
  }

3.前台处理数据

数据得到以后就要处理

前段的ComboBox(Initialize)初始化时会调用Render方法,Render方法会调用RenderDropDown方法,RenderDropDown方法调用RenderItem方法,把每项都呈现出来

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据
, text
, enabled
value
combobox控件、android combobox控件、vb中combobox控件、combobox控件属性、combobox控件用法,以便于您获取更多的相关知识。

时间: 2024-09-14 14:39:08

ComponentArt控件分析之ComboBox(2)的相关文章

ComponentArt控件分析之ComboBox(1)

ComponentArt相信很多人都用过.功能比较强大,而且使用方便.最近可能要用到这套控件.所以顺便要学习一下这套控件是如何实现的. 我并不会贴一下代码就了事,也不可能一篇就把一个控件就讲完.这样的话,一个商业控件也太简单了. 还是让我们来一起来慢慢的分析.我会尽量凭自己能力把细节都写出来 我们先从ComboBox入手 一.效果图 先看下效果 图一 ComboBox特性: 与DropDownList相比,可以自己输入文本,但HTML未提供这样的标签,所以只能利用现有的标签来模拟. 上面为截图,

自定义asp.net控件分析(二)

上一篇分析了自定义控件的基本语法.这次编写一控件来作为实例. 在asp.net中当你想对button的click事件做确认操作,但Button按钮不能满足此要求.就针对此要求来编写自己的控件. ====================================================================== 继承:System.Web.UI.WebControls.Button 控件功能:弹出确认消息框 控件属性:message(消息框中显示的信息) 控件方法:不需要

在Visual Studio 2005的DataGridView控件中加入ComboBox下拉列表框的实现(C#)

datagrid|visual|控件|下拉|下拉列表 虽然在Visual Studio中 DataGridView控件的DataGridViewComboBoxColumn可以实现下拉列表框,但这样的列会在整列中都显示下拉列表框,不太美观,而且还要用代码实现数据绑定.本文介绍一种只在当前编辑单元格中显示下拉列表框的方法,供大家参考. 首先新建一个Windows应用程序,将主窗体重命名为MainForm,在MainForm中加入一个DataGridView控件,命名为dgv_User.如下图所示:

向DataGrid控件中添加ComboBox控件

combobox控件|datagrid|datagrid控件   在前面看到了很多关于怎样向DataGrid中添加ComboBox控件的方法.使用的方法全部都是在VB6.0中的方法. 我还是要说说在CSND中发贴的朋友. 现在所谓的.NET编程人员,不知道是怎么了呢!只是停留在使用.NET的编程环境中.并没有真正的了解面向对象的.NET编程思想. 我现在就利用继承DataGridColumnStyle完成向DataGrid中添加ComboBox. 希望这样有助于大家了解真正的面向对象编程的思想.

C#怎么在treeview控件中显示comboBox中选定的父节点以及其所有的子节点?

问题描述 如题,需要补充一下,treeview并不是在comboBox中的,他们两个是独立的 解决方案 解决方案二:你这无非就是做combobox的选择改变时间,然后给treview控件绑定赋值.

在DataGridView控件中加入ComboBox下拉列表框的实现

本文转载:http://www.cnblogs.com/luqingfei/archive/2007/03/28/691372.html   虽然在Visual Studio中 DataGridView控件的DataGridViewComboBoxColumn可以实现下拉列表框,但这样的列会在整列中都显示下拉列表框,不太美观,而且还要用代码实现数据绑定.本文介绍一种只在当前编辑单元格中显示下拉列表框的方法,供大家参考. 首先新建一个Windows应用程序,将主窗体重命名为MainForm,在Ma

ComponentArt 控件效率问题,有人用过吗

问题描述 我用的版本是Web.UI2007.1forASP.NET2.0,当我用Grid显示数据时很慢.是不是这个控件的速度慢啊?(我的数据很少,就一点) 解决方案 解决方案二:sf解决方案三:下了这个东西,还没有时间去研究.解决方案四:用过,数据量也不算大,我用的1.1,速度感觉也有点儿慢.解决方案五:用了一次,感觉速度慢.就再没有用了

c#中ListView控件加入ComboBox

很多项目中要用到ListView控件来呈现并编辑数据.为方便用户的输入,可在ListView控件中加入Combobox来提高其用户操作性.实现的效果图: 1.建立一用户控件,命名MyListView,继承自ListView控件. 直接贴出代码: using System; using System.Collections; using System.ComponentModel; using System.Drawing; using System.Data; using System.Wind

[GduUI类库]开源分享:ListBox, ComboBox等Winform控件

问题描述 是的,又是GduUI类库.距离上次发布有一个多月时间了,类库主要做了以下几方面的更新:1.对发现的问题进行了修正,不足的地方进行了优化,相应地方添加了注释.2.对类库大部分控件,相应做出了Winless版本,即无句柄的,后面会再说明.3.类库增加了GMButton,GMCheckBox,GMRadioButton,GMListBox,GMComboBox五类实用的控件.照例先贴上前两个帖子的地址,有兴趣的可以再回顾一下看看,从这几个帖子可以大概看到类库是如何慢慢发展起来的.这次发帖的主