using System; using System.Windows.Forms; using DevComponents.DotNetBar; using GeoScene.Data; using GeoScene.Engine; using GeoScene.Globe; namespace Cyberpipe { public partial class FrmPropertiesMarker : Office2007Form { GSOLayer mLayer; GSOFeature mFeature; GSOGlobeControl globeControl1; public string labelText = ""; public FrmPropertiesMarker(GSOGlobeControl globe,GSOLayer layer,GSOFeature feature) { InitializeComponent(); mLayer = layer; mFeature = feature; globeControl1 = globe; } /// <summary> /// 窗体初始化事件处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void FrmPropertiesMarker_Load(object sender, EventArgs e) { textBoxX1.Text = mFeature.Name; GSOFeatureDataset fDataset = mLayer.Dataset as GSOFeatureDataset; for (int i = 0; i < fDataset.FieldCount; i++) { string fieldName = fDataset.GetField(i).Name; if (mFeature.GetFieldDefn(fieldName) != null) { checkedListBox1.Items.Add(fieldName + ":" + mFeature.GetValue(fieldName)); } } } /// <summary> /// 全选按钮事件处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonX1_Click(object sender, EventArgs e) { for (int i = 0; i < checkedListBox1.Items.Count; i++) { checkedListBox1.SetItemChecked(i, true); } } /// <summary> /// 反选按钮事件处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonX2_Click(object sender, EventArgs e) { for (int i = 0; i < checkedListBox1.Items.Count; i++) { if (checkedListBox1.GetItemChecked(i)) { checkedListBox1.SetItemChecked(i, false); } else { checkedListBox1.SetItemChecked(i, true); } } } /// <summary> /// 关闭按钮事件处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonX4_Click(object sender, EventArgs e) { Close(); } /// <summary> /// 添加标注按钮事件处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonX3_Click(object sender, EventArgs e) { for (int i = 0; i < checkedListBox1.CheckedItems.Count; i++) { labelText += checkedListBox1.CheckedItems[i] + "\n"; } if (labelText != null) { DialogResult = DialogResult.OK; } } } }