Visual Studio 2022 风格的可拖拽 Dock 容器开发教程 - C# 示例
"要开发一个和Visual Studio 2022主界面一样的可拖拽的Dock容器,你可以使用以下步骤:\n\n1. 创建一个新的Windows Forms应用程序项目。\n2. 在Visual Studio的工具箱中,找到并拖动一个SplitContainer控件到窗体上。这将作为主容器。\n3. 在SplitContainer的左侧和右侧分别添加两个Panel控件。这将作为Dock容器的区域。\n4. 在每个Panel控件中,你可以添加其他控件或者用户界面元素。\n5. 为了使这些Panel控件可拖拽,你可以在窗体的Load事件中添加以下代码:\n\ncsharp\nprivate void Form1_Load(object sender, EventArgs e)\n{\n panel1.AllowDrop = true;\n panel2.AllowDrop = true;\n panel1.DragEnter += Panel_DragEnter;\n panel2.DragEnter += Panel_DragEnter;\n panel1.DragDrop += Panel_DragDrop;\n panel2.DragDrop += Panel_DragDrop;\n}\n\nprivate void Panel_DragEnter(object sender, DragEventArgs e)\n{\n if (e.Data.GetDataPresent(typeof(Panel)))\n {\n e.Effect = DragDropEffects.Move;\n }\n}\n\nprivate void Panel_DragDrop(object sender, DragEventArgs e)\n{\n Panel sourcePanel = (Panel)e.Data.GetData(typeof(Panel));\n SplitContainer targetContainer = (SplitContainer)((Panel)sender).Parent;\n\n if (targetContainer != null)\n {\n targetContainer.Panel1.Controls.Remove(sourcePanel);\n targetContainer.Panel2.Controls.Add(sourcePanel);\n }\n}\n\n\n以上代码为每个Panel控件设置了AllowDrop属性为true,并为DragEnter和DragDrop事件添加了处理程序。这样当你拖动一个Panel控件到另一个Panel控件上时,它将被移动到目标容器的另一侧。\n\n6. 运行程序,你应该能够拖动一个Panel控件到另一个Panel控件上,实现可拖拽的Dock容器效果。\n\n请注意,这只是一个简单的示例,你可以根据自己的需求进行修改和扩展。\n
原文地址: https://www.cveoy.top/t/topic/prbd 著作权归作者所有。请勿转载和采集!