c sharp 控制按钮类似折叠式的,在点击按钮时其按钮下的子按钮向下展开,按其他项按钮时收缩
时间: 2024-05-05 15:22:56 浏览: 18
您可以使用C#中的TreeView控件来实现这个折叠式按钮的效果。TreeView控件是一个树形控件,可以将每个节点看作为一个按钮,当点击某个节点时,它的子节点会展开或者收缩。
以下是一个简单的示例代码,演示如何在C#中使用TreeView控件实现这个折叠式按钮的效果:
```csharp
private void Form1_Load(object sender, EventArgs e)
{
// 添加根节点
TreeNode rootNode = new TreeNode("根节点");
treeView1.Nodes.Add(rootNode);
// 添加子节点
TreeNode childNode1 = new TreeNode("子节点1");
TreeNode childNode2 = new TreeNode("子节点2");
rootNode.Nodes.Add(childNode1);
rootNode.Nodes.Add(childNode2);
// 设置节点展开方式
rootNode.Expand();
childNode1.Collapse();
childNode2.Collapse();
}
private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Node.IsExpanded)
{
// 如果节点已经展开,则收缩
e.Node.Collapse();
}
else
{
// 如果节点未展开,则展开
e.Node.Expand();
}
}
```
在这个示例中,我们创建了一个根节点,以及两个子节点。在窗体的Load事件中,我们设置了节点的展开方式,让根节点展开,子节点收缩。在TreeView控件的NodeMouseClick事件中,我们判断当前点击的节点是否已经展开,如果已经展开,则收缩它;如果未展开,则展开它。这样就可以实现一个简单的折叠式按钮。