Example #1
0
        //重新打开属性表
        public bool ReloadAttributeTable()
        {
            try
            {
                m_barTable.Show();
                ILayer m_Layer = ClsGlobal.GetSelectedLayer(m_hookHelper);
                m_AttributeTable = new System.Data.DataTable();
                if (m_Layer == null)
                {
                    return(false);
                }

                if (m_Layer is IFeatureLayer)
                {
                    ReLoadFeatureLayerTable(m_Layer);
                }
                else if (m_Layer is IRasterLayer)
                {
                    ReLoadRasterLayerTable(m_Layer);
                }
                else
                {
                    return(false);
                }

                UpdateUI(m_Layer);
                m_gridfield.DataSource  = m_AttributeTable;
                m_gridfield.CurrentCell = null;
            }
            catch (System.Exception ex)
            {
                return(false);
            }
            return(true);
        }
Example #2
0
        private void buttonX1_Click(object sender, EventArgs e)
        {
            ITable pTableR = (ITable)pLayer;
            ITable pTableJ = (ITable)pJoinLayer;
            IField pField  = new FieldClass();

            m_AttributeTable = new System.Data.DataTable();
            for (int i = 0; i < pTableR.Fields.FieldCount; i++)
            {
                m_AttributeTable.Columns.Add();
                m_AttributeTable.Columns[i].ColumnName = pTableR.Fields.Field[i].Name;
            }
            for (int k = 0; k < pTableJ.Fields.FieldCount; k++)
            {
                //pField = pTableJ.Fields.Field[k];
                //pTableR.AddField(pField);
                m_AttributeTable.Columns.Add();
                m_AttributeTable.Columns[pTableR.Fields.FieldCount + k].ColumnName = pTableJ.Fields.Field[k].Name + "*";
            }

            if (chkall.Checked == true)
            {
                IRow    row    = null;
                ICursor cursor = pTableR.Search(null, false);
                row = cursor.NextRow();
                while (row != null)
                {
                    DataRow drow = m_AttributeTable.NewRow();
                    for (int k = 0; k < pTableR.Fields.FieldCount; k++)
                    {
                        drow[k] = row.get_Value(k);
                    }

                    IRow    jrow    = null;
                    ICursor jcursor = pTableJ.Search(null, false);
                    jrow = jcursor.NextRow();
                    while (jrow != null)
                    {
                        if (row.get_Value(cmbtable.SelectedIndex).ToString() == jrow.get_Value(cmbjointable.SelectedIndex).ToString())
                        {
                            for (int m = 0; m < pTableJ.Fields.FieldCount; m++)
                            {
                                drow[pTableR.Fields.FieldCount + m] = jrow.get_Value(m);
                            }
                            break;
                        }
                        jrow = jcursor.NextRow();
                    }
                    m_AttributeTable.Rows.Add(drow);
                    row = cursor.NextRow();
                }
            }
            else
            {
                IRow    row    = null;
                ICursor cursor = pTableR.Search(null, false);
                row = cursor.NextRow();
                while (row != null)
                {
                    DataRow drow    = m_AttributeTable.NewRow();
                    IRow    jrow    = null;
                    ICursor jcursor = pTableJ.Search(null, false);
                    jrow = jcursor.NextRow();
                    while (jrow != null)
                    {
                        if (row.get_Value(cmbtable.SelectedIndex).ToString() == jrow.get_Value(cmbjointable.SelectedIndex).ToString())
                        {
                            for (int k = 0; k < pTableR.Fields.FieldCount; k++)
                            {
                                drow[k] = row.get_Value(k);
                            }

                            for (int m = 0; m < pTableJ.Fields.FieldCount; m++)
                            {
                                drow[pTableR.Fields.FieldCount + m] = jrow.get_Value(m);
                            }
                            break;
                        }
                        jrow = jcursor.NextRow();
                    }

                    m_AttributeTable.Rows.Add(drow);
                    row = cursor.NextRow();
                }
            }



            m_gridfield.AutoGenerateColumns = true;
            m_barTable.Show();
            int nItemCount = m_barTable.Items.Count;

            for (int i = 0; i < nItemCount; i++)
            {
                m_barTable.Items[i].Visible = true;
            }
            m_barTable.Invalidate();
            m_barTable.Text         = pLayer.Name;
            m_docktable.Text        = pLayer.Name;
            m_gridfield.DataSource  = m_AttributeTable;
            m_gridfield.CurrentCell = null;

            this.Close();
        }
Example #3
0
		private void AddDotNetBarControls()
		{
			if(m_Menu!=null)
			{
				m_Menu.RecalcSize();
				m_SimpleBar.Size=new Size(groupBox1.ClientRectangle.Width-12,16);
				m_SimpleBar.RecalcSize();
				m_FloatBar.Size=new Size(groupBox1.ClientRectangle.Width,16);
				m_FloatBar.RecalcSize();
				m_PopupBar.Size=new Size(groupBox1.ClientRectangle.Width,24);
				m_PopupBar.RecalcSize();
				return;
			}

			m_Menu=new MenuPanel();
			m_Menu.PopupMenu=false;
			m_Menu.Location=new Point(8,135);

			// Create Simple Toolbar
			m_SimpleBar=new Bar();
			m_SimpleBar.PassiveBar=true;
			m_SimpleBar.Location=new Point(4,16);
			m_SimpleBar.ThemeAware=false;

			m_FloatBar=new Bar();
			m_FloatBar.PassiveBar=true;
			m_FloatBar.Location=new Point(4,46);
			m_FloatBar.ThemeAware=false;

			m_PopupBar=new Bar();
			m_PopupBar.PassiveBar=true;
			m_PopupBar.Location=new Point(4,96);
			m_PopupBar.ThemeAware=false;

			ButtonItem menuItem=new ButtonItem();
			ButtonItem item, item2;
			Bitmap bmp=null;

			item=new ButtonItem("new","&New...");
			bmp=BarFunctions.LoadBitmap("BarEditorImages.FileNew.bmp");
			bmp.MakeTransparent(Color.Magenta);
			item.Image=bmp;
			m_SimpleBar.Items.Add(item.Copy());
			m_FloatBar.Items.Add(item.Copy());
			m_PopupBar.Items.Add(item.Copy());
			menuItem.SubItems.Add(item);
			item=new ButtonItem("open","&Open");
			bmp=BarFunctions.LoadBitmap("BarEditorImages.FileOpen.bmp");
			bmp.MakeTransparent(Color.Magenta);
			item.Image=bmp;
			item2=(ButtonItem)item.Copy();
			item2.ButtonStyle=eButtonStyle.ImageAndText;
			m_SimpleBar.Items.Add(item2);
			m_FloatBar.Items.Add(item2.Copy());
			m_PopupBar.Items.Add(item2.Copy());
			menuItem.SubItems.Add(item);
			item=new ButtonItem("close","&Close");
			bmp=BarFunctions.LoadBitmap("BarEditorImages.FileClose.bmp");
			bmp.MakeTransparent(Color.Magenta);
			item.Image=bmp;
			item2=(ButtonItem)item.Copy();
			item2.Checked=true;
			item2.ButtonStyle=eButtonStyle.ImageAndText;
			m_SimpleBar.Items.Add(item2);
			m_PopupBar.Items.Add(item2.Copy());
			item2=(ButtonItem)item2.Copy();
			item2.Enabled=false;
			m_FloatBar.Items.Add(item2.Copy());
			menuItem.SubItems.Add(item);
			item=new ButtonItem("open","Add Ne&w Item...");
			menuItem.SubItems.Add(item);
			item=new ButtonItem("open","Add Existin&g Item...");
			menuItem.SubItems.Add(item);
			item=new ButtonItem("opensol","Open Solution...");
			item.BeginGroup=true;
			bmp=BarFunctions.LoadBitmap("BarEditorImages.FileOpenSol.bmp");
			bmp.MakeTransparent(Color.Magenta);
			item.Image=bmp;
			item2=(ButtonItem)item.Copy();
			item2.Enabled=false;
			m_SimpleBar.Items.Add(item2);
			m_FloatBar.Items.Add(item2.Copy());
			m_PopupBar.Items.Add(item2.Copy());
			menuItem.SubItems.Add(item);
			item=new ButtonItem("open","Close Solution");
			bmp=BarFunctions.LoadBitmap("BarEditorImages.FileCloseSol.bmp");
			bmp.MakeTransparent(Color.Magenta);
			item.Image=bmp;
			item.Enabled=false;
			menuItem.SubItems.Add(item);

			m_Menu.ParentItem=menuItem;

			groupBox1.Controls.Add(m_Menu);
			m_Menu.RecalcSize();
			m_Menu.Show();
            
			//m_SimpleBar.SetBarState(eBarState.Docked);
			m_SimpleBar.Size=new Size(groupBox1.ClientRectangle.Width,16);
			m_SimpleBar.GrabHandleStyle=eGrabHandleStyle.StripeFlat;
			groupBox1.Controls.Add(m_SimpleBar);
			m_SimpleBar.RecalcSize();
			m_SimpleBar.Show();

			m_FloatBar.SetBarState(eBarState.Floating);
			m_FloatBar.Size=new Size(groupBox1.ClientRectangle.Width,16);
			groupBox1.Controls.Add(m_FloatBar);
			m_FloatBar.Text="Bar Caption";
			m_FloatBar.RecalcSize();
			m_FloatBar.Show();

			m_PopupBar.SetBarState(eBarState.Popup);
			m_PopupBar.Size=new Size(groupBox1.ClientRectangle.Width,24);
			m_PopupBar.PopupWidth=groupBox1.ClientRectangle.Width;
			groupBox1.Controls.Add(m_PopupBar);
			m_PopupBar.RecalcSize();
			m_PopupBar.Show();
		}
Example #4
0
		/// ------------------------------------------------------------------------------------
		/// <summary>
		/// Sets properties for a menu bar or toolbar.
		/// </summary>
		/// <param name="bar">Bar to update.</param>
		/// <param name="barProps">New properties of bar.</param>
		/// ------------------------------------------------------------------------------------
		private void SetBarProperties(Bar bar, TMBarProperties barProps)
		{
			if (bar == null || barProps == null || !barProps.Update)
				return;

			if (barProps.Text != bar.Text)
				bar.Text = barProps.Text;

			if (barProps.Enabled != bar.Enabled)
				bar.Enabled = barProps.Enabled;

			if (barProps.Visible != bar.Visible)
			{
				if (barProps.Visible)
					bar.Show();
				else
					bar.Hide();
			}
		}