| Предыдущая тема :: Следующая тема   | 
	
	
	
		| Автор | 
		Сообщение | 
	
	
		СергейТ
 
 
  Зарегистрирован: 17.06.2005 Сообщения: 44 Откуда: Новосибирск
  | 
		
			
				 Добавлено: Пт 22 Мар 2013 13:26    Заголовок сообщения: Примеры модулей на .net (c#) | 
				     | 
			 
			
				
  | 
			 
			
				Здравствуйте,
 
 
Если у кого есть примеры следующего, на C#:
 
 
- встраиваемый модуль (inm + dll) где вызывает диалоговое окно (желательно плавающее) и выполняется какое либо взаимодействие с ИнГео.
 
- подключение к ИнГео из внешней программы (своей) и взаимодейтсвие с ИнГео.
 
 
скиньте пожалуйста.
 
 
Заранее спасибо за любые подсказки и примеры.
 | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		APopov
 
 
  Зарегистрирован: 19.06.2006 Сообщения: 347 Откуда: Самара
  | 
		 | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		СергейТ
 
 
  Зарегистрирован: 17.06.2005 Сообщения: 44 Откуда: Новосибирск
  | 
		
			
				 Добавлено: Чт 11 Апр 2013 15:15    Заголовок сообщения:  | 
				     | 
			 
			
				
  | 
			 
			
				Да, смотрел. Там нет того что мне нужно. 
 
 
Благодаря Михаилу Власову и другим форумчанам, кое что удалось сделать (встраиваемый модуль (inm + dll) где вызывает диалоговое окно (желательно плавающее) и выполняется какое либо взаимодействие с ИнГео). А именно, из модуля при выделении объекта, его начальная и конечная точки помечаются одним из стилей проекта.
 
 
Если кому интересно, могу выложить проект на VS2012, правда я не программист, поэтому код очень корявый.
 | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		Сергей Попов
 
 
  Зарегистрирован: 05.03.2005 Сообщения: 299 Откуда: г. Тольятти - Самара - Копейск
  | 
		
			
				 Добавлено: Сб 13 Апр 2013 12:28    Заголовок сообщения:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | СергейТ писал(а): | 	 		  | Если кому интересно, могу выложить проект на VS2012 | 	  Интересно.
 _________________ г. Тольятти, г. Самара, ОАО "КУЗНЕЦОВ" | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		СергейТ
 
 
  Зарегистрирован: 17.06.2005 Сообщения: 44 Откуда: Новосибирск
  | 
		
			
				 Добавлено: Сб 13 Апр 2013 18:26    Заголовок сообщения:  | 
				     | 
			 
			
				
  | 
			 
			
				SampleDotNetModule.dll нужно будет зарегистрировать regasm "[путь]\SampleDotNetModule.dll" /codebase
 
В папке IngeoModuls_inm есть файл со стилями SelectionStyle.idf, которые я использовал. Возможно при импорте ID поменяются, я именно к ним привязывался. Тут же есть SampleModule.inm, его нужно импортировать в программные модули.
	
  
	 
	
	
		
	 
	
		|  Описание: | 
		
			
		 | 
		  Скачивание | 
	 
	
		|  Название файла: | 
		 SampleDotNetModule.rar | 
	 
	
		|  Размер файла: | 
		 91.07 KB | 
	 
	
		|  Скачено: | 
		 1073 раз(а) | 
	 
	 
	 
 | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		СергейТ
 
 
  Зарегистрирован: 17.06.2005 Сообщения: 44 Откуда: Новосибирск
  | 
		
			
				 Добавлено: Пт 10 Май 2013 18:49    Заголовок сообщения: Нужна подсказка | 
				     | 
			 
			
				
  | 
			 
			
				Доброе время суток!
 
 
Подскажите пожалуйста, почему у меня после изменения свойства формы через SetParent(Handle, new IntPtr(0)); перестают на ней появляться контролы добавляемые динамически. И как это поведение исправить. 
 
Функция используется в исходниках которые я прикладывал в этой теме.
 
 
 	  | Код: | 	 		  
 
public void SamplePanel(IIngeoApplication fApplication)
 
        {
 
            if (!_fTaskPanelShow)
 
            {
 
                _oldTop = Top;
 
                _oldLeft = Left;
 
                _mainWindow = fApplication.MainWindow;
 
                _fTaskPanel = _mainWindow.CreateTaskPanel("TaskPanelGidra", "Описание сети");
 
                SetParent(Handle, new IntPtr(_fTaskPanel.WindowHandle));
 
                _fTaskPanel.Activate();
 
                _fTaskPanelShow = !_fTaskPanelShow;
 
                FormBorderStyle = FormBorderStyle.None;
 
                WindowState = FormWindowState.Maximized;
 
                button1.Text = "Превратить в окно";
 
            }
 
            else
 
            {
 
                FormBorderStyle = FormBorderStyle.Sizable;
 
                button1.Text = "Превратить в панель";
 
                _fTaskPanelShow = !_fTaskPanelShow;
 
 
                SetParent(Handle, new IntPtr(0));   // <- вот это место
 
 
                Top = _oldTop;
 
                Left = _oldLeft; ;
 
                DestroyPanel(_fTaskPanel);
 
            }
 
        }
 
 | 	  
 
 
Если окно превращаю в панель, но все хорошо, всё появляется. Но при возвращении в окно, опять ничего не появляется.
	
  
	 
	
	
		
	 
	
		|  Описание: | 
		
			
			
				| Окно - контролы добавляются, но их не видно | 
			 
			 
		 | 
	 
	
		|  Размер файла: | 
		 35.34 KB | 
	 
	
		|  Просмотрено: | 
		 12475 раз(а) | 
	 
	
		
  
 
  | 
	 
	 
	 
	 
	
	
		
	 
	
		|  Описание: | 
		
			
			
				| Панель - контролы добавляются и их видно | 
			 
			 
		 | 
	 
	
		|  Размер файла: | 
		 32.37 KB | 
	 
	
		|  Просмотрено: | 
		 12475 раз(а) | 
	 
	
		
  
 
  | 
	 
	 
	 
 | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		APopov
 
 
  Зарегистрирован: 19.06.2006 Сообщения: 347 Откуда: Самара
  | 
		
			
				 Добавлено: Вт 14 Май 2013 15:47    Заголовок сообщения:  | 
				     | 
			 
			
				
  | 
			 
			
				Возможно, ваши динамические контролы при смене парента "уезжают" за видимую границу формы. попробуйте обернуть их в панель с авто алигнами или при событии OnResize заново установить им top, left
 _________________ ОАО "Самара-Информспутник",
 
   инженер-программист Попов Артем | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		 |