您的位置:首页 > 其它

实现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;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐