我在一个asp.net应用程序中有一个ajax控件工具包reorderlist。
我需要禁止某些特定的步骤被重新排序。这必须是动态完成的。所有步骤都是连续的,都是从头开始的,但是直到运行时才知道有多少步骤需要禁用,不能再重新排序。
我尝试了reorderlist_itemdatabound的e.item.enabled = false,但这只是禁用了链接。我需要关闭拖拽处理程序。
任何帮助都是非常感谢的。谢谢!
发布于 2009-11-21 03:25:54
老实说,我对这个控件不是很熟悉,但是...
您需要隐藏拖动处理程序div (或者我相信'DragHandleTemplate‘中的任何东西)和/或更改它的类。两个建议:
1)添加javascript启动脚本以禁用相关div。
2)此控件的子类化...重写Render()方法。将其替换为ReorderList中的原始代码,但请检查该项以查看是否应呈现拖动手柄。
发布于 2010-05-10 23:47:12
作为对某些项目禁用拖放的变通方法-您可以将width=0设置为内部控件
<DragHandleTemplate> </DragHandleTemplate>。因此,用户将无法选择要拖动的项目。
发布于 2010-10-01 04:11:55
假设您在DragHandleTemplate中有一个id为dragme的图像;您可以在ItemDataBound处理程序中执行此操作:
Image dragMe = (Image)((TableRow)e.Item.Controls[0].Controls[0]).Cells[0].Controls[0].FindControl("dragMe");
dragMe.Style.Add(HtmlTextWriterStyle.Visibility, "hidden");这样可以保留对齐方式。
https://stackoverflow.com/questions/1771444
复制相似问题