我有一個asp.net應用程序內的ajax controltoolkit重新排序列表。ASP.NET Ajax ReOrderList - 禁止拖放特定項目的任何方法?
我需要禁用某些特定的步驟重新排序。這必須動態完成。所有的步驟都是連續的,從頭開始,但是直到運行時才知道有多少需要被禁用,以便進一步重新排序。
我試過reorderlist_itemdatabound的e.item.enabled = false,但這只是禁用鏈接。我需要禁用拖動處理程序。
任何幫助是極大的讚賞。謝謝!
我有一個asp.net應用程序內的ajax controltoolkit重新排序列表。ASP.NET Ajax ReOrderList - 禁止拖放特定項目的任何方法?
我需要禁用某些特定的步驟重新排序。這必須動態完成。所有的步驟都是連續的,從頭開始,但是直到運行時才知道有多少需要被禁用,以便進一步重新排序。
我試過reorderlist_itemdatabound的e.item.enabled = false,但這只是禁用鏈接。我需要禁用拖動處理程序。
任何幫助是極大的讚賞。謝謝!
說實話,我不是太熟悉的控制,但...
你需要隱藏拖動處理程序股利(或無論是在「DragHandleTemplate」我相信)和/或改變它的類。兩個建議:
1)添加一個JavaScript啓動腳本來禁用有問題的div。
2)此控件的子類...重寫Render()方法。將其替換爲ReorderList中的原始代碼,但檢查Item以查看是否應呈現拖動手柄。
作爲解決方法,禁用某些項目的拖放 - 您可以將寬度設置爲0到
<DragHandleTemplate> </DragHandleTemplate>
之內的控件。因此用戶將無法挑選該物品進行拖拽。
假設您的圖像編號爲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");
這樣你保持一致。