Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 单击另一个c按钮即可绘制按钮#_C#_.net - Fatal编程技术网

C# 单击另一个c按钮即可绘制按钮#

C# 单击另一个c按钮即可绘制按钮#,c#,.net,C#,.net,我目前正在尝试为组合框中的每个项目绘制一组按钮,下面是我正在绘制的代码 foreach (Object cbi in acombobox.Items) { Button button = new Button(); button.Location = new Point(25, 35); button.Text = cbi.ToString(); tabbcontrol.TabPages[3].Controls.Add(button); } 这会绘制按钮,但会覆

我目前正在尝试为组合框中的每个项目绘制一组按钮,下面是我正在绘制的代码

foreach (Object cbi in acombobox.Items)
{
    Button button = new Button();
    button.Location = new Point(25, 35);
    button.Text = cbi.ToString();
    tabbcontrol.TabPages[3].Controls.Add(button);
}
这会绘制按钮,但会覆盖任何其他按钮,是否有方法在tabcontrol上的不同位置绘制按钮

编辑


我没有很好地解释如何将按钮排列在另一个按钮周围,例如,像蜘蛛图一样,这样当我单击主按钮时,其他按钮将围绕它绘制,并将线扩展到每个按钮?

是的。你给他们一个不同的位置。如您所见,您当前为所有按钮提供了相同的位置,这就是为什么它们彼此重叠的原因。

是的。你给他们一个不同的位置。如您所见,您当前为所有按钮指定了相同的位置,这就是为什么它们彼此重叠的原因。

您在相同的位置绘制所有按钮。如果您知道要添加多少按钮,请为它们计算布局,并将它们添加到您希望绘制它们的位置

如果正在加载数量未知的按钮,则可能希望查看
FlowLayoutPanel
控件,该控件按水平或垂直流动方向排列其内容。这意味着您可以动态地向其中添加控件,这些控件将自动放置在彼此的下面/旁边,而不是彼此的上面

根据原始问题和评论的更新进行编辑:


如果您知道在设计时需要哪些按钮,可以绘制它们,然后只需在“中心”按钮单击上切换可见性。否则,您需要使用一些三角学来计算它们的位置

您正在同一位置绘制所有按钮。如果您知道要添加多少按钮,请为它们计算布局,并将它们添加到您希望绘制它们的位置

如果正在加载数量未知的按钮,则可能希望查看
FlowLayoutPanel
控件,该控件按水平或垂直流动方向排列其内容。这意味着您可以动态地向其中添加控件,这些控件将自动放置在彼此的下面/旁边,而不是彼此的上面

根据原始问题和评论的更新进行编辑:


如果您知道在设计时需要哪些按钮,可以绘制它们,然后只需在“中心”按钮单击上切换可见性。否则,您需要使用一些三角学来计算它们的位置

WPF?WinForms?还有别的吗?WPF?WinForms?还有什么吗?是的,我刚刚意识到这个问题已经更新,以显示我想要达到的目标。一个刚刚意识到这个问题已经更新,以显示我想要达到的目标。一个问题已经更新,以显示所需的输出形式。你知道如何实现这个编辑后的问题以显示所需的输出形式吗?你知道如何实现吗