2009-11-20 2 views
0

У меня есть список переопределений ajax controltoolkit в приложении asp.net.ASP.NET Ajax ReOrderList - любой способ отключить определенные элементы от перетаскивания и удаления?

Мне нужно отключить определенные шаги от переупорядочения. Это нужно сделать динамически. Все шаги являются последовательными и начинаются с самого начала, но пока неизвестно, сколько из них нужно будет отключить от дальнейшего переупорядочения.

Я попробовал e.item.enabled = false для reorderlist_itemdatabound, но это просто отключенные ссылки. Мне нужно отключить обработчик перетаскивания.

Любая помощь очень ценится. Благодаря!

ответ

0

Честно говоря, я не слишком хорошо знакомы с этим элементом управления, но ...

Вам нужно скрыть DIV обработчика перетаскивания (или то, что в «DragHandleTemplate» я верю) и/или изменения его классом. Два предложения:

1) Добавьте скрипт запуска javascript для отключения соответствующих разделов.

2) Подкласс этого элемента управления ... Переопределите метод Render(). Замените его исходным кодом из ReorderList, но проверьте элемент, чтобы увидеть, нужно ли отображать маркер перетаскивания.

0

в качестве обходного пути для отключения drag'n'drop для некоторого элемента - вы можете установить ширину = 0 на элемент управления внутри

<DragHandleTemplate> </DragHandleTemplate>
. Таким образом, пользователь не сможет выбрать элемент для перетаскивания.

0

Предположим, у вас есть образ с id dragme в DragHandleTemplate; Вы можете сделать это в ItemDataBound обработчика:

Image dragMe = (Image)((TableRow)e.Item.Controls[0].Controls[0]).Cells[0].Controls[0].FindControl("dragMe"); 

dragMe.Style.Add(HtmlTextWriterStyle.Visibility, "hidden"); 

Таким образом, вы сохранить выравнивание.

Смежные вопросы