【问题标题】:Need Methodology to replicate a panel with button and shifting other buttons in a same time需要方法来复制带有按钮的面板并同时移动其他按钮
【发布时间】:2013-04-30 08:00:13
【问题描述】:

这是我的表格

如果我单击第一个面板上的“添加”,我想在第一个面板下方创建“Strategy1_2”,然后将所有其他面板向下移动。 如果我再次点击我想创建 Strategy1_3 (...)

我知道如何创建按钮,但不知道如何复制整个面板。 这是我的按钮代码与此过程相距甚远吗?

private void addstrat1_i_Click(object sender, EventArgs e)
{
    panel3strat.Width += 200;
    Button addstrat1_2 = new Button();
    addstrat3_2.Size = new Size(210, 41);
    addstrat1_2.Location = new Point(31,89);
    addstrat1_2.Visible = true;
    panel1strat.Controls.Add(addstrat3_2);

}

【问题讨论】:

  • 顺便说一句,学习 WPF 可能会很痛苦,但对于这项任务来说真的很值得

标签: c# .net button panel


【解决方案1】:

最好的方法是为策略面板创建一个用户控件。然后,您可以将 UserControls 插入 FlowLayoutPanel。这将解决您准确放置控件和创建某些面板副本的问题。

请注意,在表单上添加大量控件时,可能会耗尽资源(例如窗口句柄)。这可以通过仅显示一定数量的控件并在滚动时通过此“固定”控件移动数据来解决。

【讨论】:

    【解决方案2】:

    我建议使用两种方法:CreatePanelBlock() 将发出 UserControl 并将其添加到容器中,BindPanelWithData(...) 将设置依赖项。

    请记住,您可以将面板设置为自定义控件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-10
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多