实现ArcGIS符号选择控件(ComboBox)
2011-08-01 00:38
260 查看
1、首先来看一下效果图,我们接下来要实现就是右边那个符号选择控件(SymbolComboBox);
View Code
1 private ISymbologyStyleClass m_SymbologyStyleClass = null;
2 private List<IStyleGalleryItem> m_SymbolArray = new List<IStyleGalleryItem>();
3
4 public ISymbologyStyleClass SymbologyStyleClass
5 {
6 get
7 {
8 return m_SymbologyStyleClass;
9 }
10 set
11 {
12 m_SymbologyStyleClass = value;
13
14 if (m_SymbologyStyleClass != null)
15 {
16 this.m_SymbolArray.Clear();
17 this.BeginUpdate();
18 this.Items.Clear();
19 for (int i = 0; i < m_SymbologyStyleClass.ItemCount; i++)
20 {
21 IStyleGalleryItem item = m_SymbologyStyleClass.GetItem(i);
22 stdole.IPictureDisp picture = m_SymbologyStyleClass.PreviewItem(item, this.Width, this.Height);
23 Image image = Image.FromHbitmap(new IntPtr(picture.Handle));
24 image = new Bitmap(image, new Size(image.Width - 10, image.Height));
25 this.Items.Add(image);
26 this.m_SymbolArray.Add(item);
27 }
28 this.EndUpdate();
29 }
30 }
31 }
32
33 public IStyleGalleryItem SelectSymbol
34 {
35 get
36 {
37 if (this.SelectedIndex >= 0 && m_SymbolArray.Count > this.SelectedIndex)
38 return m_SymbolArray[this.SelectedIndex];
39 else
40 return null;
41 }
42 }
4、现在,这样一个符号选择控件就已经完成了,剩下的就是使用了,很简单,如下:
1 ISymbologyStyleClass styleClass = axSymbologyControl1.GetStyleClass(axSymbologyControl1.StyleClass);
2 this.colorRampComboBox1.SymbologyStyleClass = styleClass;
View Code
1 private ISymbologyStyleClass m_SymbologyStyleClass = null;
2 private List<IStyleGalleryItem> m_SymbolArray = new List<IStyleGalleryItem>();
3
4 public ISymbologyStyleClass SymbologyStyleClass
5 {
6 get
7 {
8 return m_SymbologyStyleClass;
9 }
10 set
11 {
12 m_SymbologyStyleClass = value;
13
14 if (m_SymbologyStyleClass != null)
15 {
16 this.m_SymbolArray.Clear();
17 this.BeginUpdate();
18 this.Items.Clear();
19 for (int i = 0; i < m_SymbologyStyleClass.ItemCount; i++)
20 {
21 IStyleGalleryItem item = m_SymbologyStyleClass.GetItem(i);
22 stdole.IPictureDisp picture = m_SymbologyStyleClass.PreviewItem(item, this.Width, this.Height);
23 Image image = Image.FromHbitmap(new IntPtr(picture.Handle));
24 image = new Bitmap(image, new Size(image.Width - 10, image.Height));
25 this.Items.Add(image);
26 this.m_SymbolArray.Add(item);
27 }
28 this.EndUpdate();
29 }
30 }
31 }
32
33 public IStyleGalleryItem SelectSymbol
34 {
35 get
36 {
37 if (this.SelectedIndex >= 0 && m_SymbolArray.Count > this.SelectedIndex)
38 return m_SymbolArray[this.SelectedIndex];
39 else
40 return null;
41 }
42 }
4、现在,这样一个符号选择控件就已经完成了,剩下的就是使用了,很简单,如下:
1 ISymbologyStyleClass styleClass = axSymbologyControl1.GetStyleClass(axSymbologyControl1.StyleClass);
2 this.colorRampComboBox1.SymbologyStyleClass = styleClass;
相关文章推荐
- Ext.Net Combobox控件 多项选择的变通实现方式
- wheelView实现滚动选择 三方开源的封装控件 spannableString autofitTextView、PinnedSectionListView SwipeListView等等
- (DevExpress2011控件教程)ASPxGridView 范例4 :ASPxGridView 行选择、多表头设计、数据导出、主表细表等功能实现
- 一个文件实现安卓滚轮选择控件
- 在DataGridView控件中加入ComboBox下拉列表框的实现
- 使用RadioGroup控件实现选项选择功能
- 在Winform中的TreeView控件,实现选中/取消选中父节点则自动选择/取消选中对应子节点
- 用jQuery实现asp.net 2.0 treeview控件完全无刷新操作实例(AJAX的增、删、改、选择以及展开收缩节点)
- C#实现的多列数据绑定组合框控件MultiColumnComboBoxEx
- ArcGis实现添加MultiLayerMarkerSymbol(多个符号叠加生成新的符号)
- 轻松实现可扩展自定义的Android滚轮时间选择控件
- 背水一战 Windows 10 (32) - 控件(选择类): Selector, ComboBox
- C#基础系列:开发自己的窗体设计器(实现控件的选择)
- Android实现滑动选择控件实例代码
- android仿ios实现分段选择控件UISegmentedControl
- android实现从系统图库中选择图片,设置到界面上的ImageView控件上。
- 实现jquery Easyui中combotree,combobox控件的动态选中
- 在工具栏(ToolBar)上添加ComboBox控件,为何每次在下拉列表中选择时,都会自动的选中工具栏上的一个按钮?
- Ext JS 4实现带week(星期)的日期选择控件(实战二)
- android中选择控件与选择界面自然过度效果的实现--一种新的交互设计