在winforms中将usercontrol拖放到flowlayoutpanel
我在winforms c#中构建一个拖放应用程序,我需要拖动一个usercontrol并将其拖放到一个flowlayout。 一切工作正常,除了放置位置,流程面板并排放置掉物品。 我该如何设置被删除的项目到确切的光标位置?在winforms中将usercontrol拖放到flowlayoutpanel
我会将我的评论延伸至答案。
这个问题不是基于drag'n'drop。问题基于语义层面。使用flowlayoutpanel来自动排列它的内容。
参见MSDN FlowLayoutPanel Control Overview
的FlowLayoutPanel的控制布置在水平或垂直 流动方向其内容。您可以将控件的内容从一行 换到下一行,或从一列到下一列。或者,您可以使用 剪辑而不是包装其内容。
所以flowlayoutpanel-控制完全是它应该做的。如果您想根据要使用正常面板的坐标为放置的控件提供特定的位置。普通面板不会自动排列其内容。
甚至不需要'Panel',Form'本身就可以使用 –
@我认为FormClass本身已经包含了一个主面板其控制。为你的控件使用额外的面板可以帮助你组织你的表单。但你是对的,使用面板是可选的。 – Luke
感谢卢克,是的,我切换到面板控制,并使用'myusercontrol.Location = panel1DropZone.PointToClient(x,y)'来获得坐标,但这次被放弃的项目不会在鼠标所在的地方被精确地放弃。你有什么想法,为什么? –
如果你不想使用流布局,请不要使用流布局面板 – Luke