Страница 1 из 1

ArcObjects, зависимый ComboBox

Добавлено: 10 май 2019, 19:19
HomBro
В общем вопрос в дополнение к моему предыдущему. В предыдущем я спрашивал, как получить имя слоя и его тип, теперь же мне надо в ещё один комбобокс вывести столбцы из таблицы, поэтому один комбобокс будет зависим от другого, то есть я в одном выбираю таблицу, в другом должны добавиться имена полей из этой таблицы, нашёл уроки, где подобное реализовано, но там VB, так что не очень понятно, как это сделать на C#, уроки с канала IGeometry.

Re: ArcObjects, зависимый ComboBox

Добавлено: 11 май 2019, 08:20
wladfm
Необходимо к комбобоксу добавить событие change. По хорошему в первом комбобоксе можно хранить список объектов (свой класс с именем и объектом таблицы). Ну а дальше что выбрано из того и определяем список полей

Re: ArcObjects, зависимый ComboBox

Добавлено: 22 май 2019, 19:03
HomBro
wladfm, чтобы не плодить новые темы, спрошу тут. Я получаю значения из таблицы по одному столбцу, как сделать, чтобы не было дублирующихся значений? Писать свой алгоритм, для того, чтобы избавиться от дублирующихся значений или же подобный функционал есть в arcobjects? Я пробовал изменять второй параметр в методе ITable.Search, я почему то из перевода понял, что он за это и отвечает, но результат никак не меняется

Re: ArcObjects, зависимый ComboBox

Добавлено: 23 май 2019, 09:50
wladfm
Второй параметр - это не то, что Вы думаете. Способов получения уникальных значений несколько и зависят они от условий задания. Простейшее - это в запросе, сложнее (и более затратное на ресурсы) - это лист и каждый раз поиск по листу. Просто ITable.Search возвращает курсор, а не таблицу. И самое главное - не забывайте убивать курсор после использования

Re: ArcObjects, зависимый ComboBox

Добавлено: 23 май 2019, 18:10
HomBro
wladfm, глупый вопрос, а как его убить, в питоне когда работал с базами данных, курсор сбрасывался командой commit, тут что то аналога не нашёл

Re: ArcObjects, зависимый ComboBox

Добавлено: 24 май 2019, 10:24
wladfm
Для C#
Marshal.ReleaseComObject(Cursor);

Re: ArcObjects, зависимый ComboBox

Добавлено: 29 май 2019, 17:23
HomBro
wladfm, и последний, надеюсь, вопрос по ArcObject'у, надо преобразовать растр в полигоны, нашёл IConversionOp, передаю в него растровый слой приведенный к IGeoDataset, рабочее пространство пустое, просто определяю его, но не задаю значение(IWorkspace pWS), строку с именем шейпа и последний параметр false, но вылетает ошибка, уже что только не пробовал, и проебразовать слой в IRasterLayer и только потом в IGeoDataset и всё равно ничего, что не так? И да, объекту типа IConversionOp присваиваю new RasterConversionOpClass().

Re: ArcObjects, зависимый ComboBox

Добавлено: 31 май 2019, 09:22
wladfm
Не работал с IConversionOp, но по хэлпу необходимо рабочее пространство. Покажите свой код, тогда более точнее скажу что не так. Можно в личку, если есть стеснение :)

Re: ArcObjects, зависимый ComboBox

Добавлено: 01 июн 2019, 13:23
HomBro
wladfm, всё, проблема была в растре, попробовал на другом и всё сработало