Удаление столбца или строки в Table

Автор Тема: Удаление столбца или строки в Table  (Прочитано 5418 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Алексей (IdeaSoft)Автор темы

  • ADN
  • *
  • Сообщений: 1188
  • Карма: 9
    • idea-soft.ru
  • Skype: makar_govorun
Как мне удалить столбец или строку в
у элемента класса?

Autdesk.AutoCAD.DatabaseServices.Table

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Удаление столбца или строки в Table
« Ответ #1 : 02-03-2020, 21:43:17 »
Как мне удалить столбец или строку в
у элемента класса?

Autdesk.AutoCAD.DatabaseServices.Table


Table.DeleteColumns
Table.DeleteRows
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Alexandr1993

  • ADN OPEN
  • Сообщений: 13
  • Карма: 0
Re: Удаление столбца или строки в Table
« Ответ #2 : 29-12-2022, 18:26:43 »
Добрый вечер. Создаю таблицу. Первая строка принимает стиль "Название". Но мне данная строка не требуется. Вызываю метод Table.DeleteRows(0,1) в целях удалить первую строку. Вместо этого удаляется последняя, вся таблица как бы "съезжает" на одну строку вверх.

Ожидаю вот так (и вручную строка удаляется именно с таким результатом):


А с вызовом метода Table.DeleteRows(0,1) получаю вот так:


где первая строка - это строка со стилем "Название" и содержание второй как бы "переехало" на нее. А этого не требуется.

Подскажите как это недоразумение победить?

Онлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1097
  • Карма: 172
Re: Удаление столбца или строки в Table
« Ответ #3 : 29-12-2022, 23:01:06 »
А если попробовать поменять стиль первой строке?
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Alexandr1993

  • ADN OPEN
  • Сообщений: 13
  • Карма: 0
Re: Удаление столбца или строки в Table
« Ответ #4 : 30-12-2022, 08:34:48 »
А если попробовать поменять стиль первой строке?

Я пытался реализовать эту идею, но:
1. Во-первых, сразу в лоб не вышло. Пробовал вот так:

777:        // Встроенные стили ячеек имеют имена:
778:        // _TITLE, _HEADER, _DATA.

table.Rows[i].Style = "_TITLE";
Источник вдохновения: http://bushman-andrey.blogspot.com/2014/06/autocad_5.html

Но поймал Exception типа eInvalidInput и решил пробовать пункт 2.

Если подскажете как назначать стиль строке - буду признателен.

2. Во-вторых, я предположил что метод удаления строки в таблице где-нибудь когда-нибудь еще обязательно пригодится, и неплохо было бы его научиться его применять.
« Последнее редактирование: 30-12-2022, 09:11:18 от Alexandr1993 »

Онлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1097
  • Карма: 172
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Онлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1097
  • Карма: 172
Re: Удаление столбца или строки в Table
« Ответ #6 : 30-12-2022, 09:30:01 »
И я бы проверил направление, в котором строится таблица: снизу вверх или сверху вниз. Может, поэтому DeleteRows срабатывает неверно (но это на уровне предположений)
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Удаление столбца или строки в Table
« Ответ #7 : 31-12-2022, 19:47:30 »
Alexandr1993,
Ты удаляешь строку таблицы случайно не в той же транзакции, в которой создаешь таблицу?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Alexandr1993

  • ADN OPEN
  • Сообщений: 13
  • Карма: 0
Re: Удаление столбца или строки в Table
« Ответ #8 : 09-01-2023, 07:47:38 »
Александр, именно так. Так понимаю в этом и кроется причина моих бед. Нужно разделить транзакции: одна под создание таблицы, вторая для редактирования таблицы? Если не сложно, можете привести любой абстрактный пример, я бы его адаптировал под свои нужды. Заранее благодарю.

Оффлайн Alexandr1993

  • ADN OPEN
  • Сообщений: 13
  • Карма: 0
Re: Удаление столбца или строки в Table
« Ответ #9 : 09-01-2023, 08:10:20 »
И я бы проверил направление, в котором строится таблица: снизу вверх или сверху вниз. Может, поэтому DeleteRows срабатывает неверно (но это на уровне предположений)

Направление было корректное, по ссылке выше (из ответа #5) сделал настройку стилей - все получилось, благодарю за наводку.