c#绘制简单的工作流程图并标记当前状态

c#绘制简单的工作流程图并标记当前状态,c#,winforms,C#,Winforms,我有一个C#Winform项目,我需要创建一个非常简单的线性工作流,以便直观地显示记录的当前状态 以下是我想做的事情的示例图像: 我必须能够在实际状态的项目上绘制边界 有什么建议吗?如果你不想利用它,你可以按照rashfmnb的建议去做。这里有一个例子 设置: Form=MainForm 面板=pnlOuter[填充=5] Panel=pnlInner[Parent=pnlOuter,通过将其放置在另一个面板中完成;Dock=Fill] Button=ToggleColor(触发下面的cli

我有一个C#Winform项目,我需要创建一个非常简单的线性工作流,以便直观地显示记录的当前状态

以下是我想做的事情的示例图像:

我必须能够在实际状态的项目上绘制边界


有什么建议吗?

如果你不想利用它,你可以按照rashfmnb的建议去做。这里有一个例子

设置:

  • Form=MainForm
  • 面板=pnlOuter[填充=5]
  • Panel=pnlInner[Parent=pnlOuter,通过将其放置在另一个面板中完成;Dock=Fill]
  • Button=ToggleColor(触发下面的click事件处理程序)
守则:

public partial class MainForm : Form
{
  bool isOn = false;
  public MainForm()
  {
     InitializeComponent();
     pnlInner.BackColor = Color.LightGoldenrodYellow;
     pnlOuter.BackColor = Color.LightGoldenrodYellow;
  }

  private void ToggleColor_Click(object sender, EventArgs e)
  {
     if (isOn)
     {
        pnlOuter.BackColor = Color.LightGoldenrodYellow;
        isOn = false;
     }
     else
     {
        pnlOuter.BackColor = Color.Red;
        isOn = true;
     }
  }
}

这个简单的示例只是切换外部面板的背景。在您的情况下,您可以使用不同的值来检查应设置的内容,依此类推。

使用具有相同填充的面板,并根据状态将特定面板背景标记为red@VAAA-我的例子给了你一个好主意,还是需要用截图之类的东西来详细说明?如果你想全力以赴,您可以构建组件(面板、标签等)并将其包装为控件。通过这种方式,您只需插入一个控件并设置其属性,而不必为所有这些嵌套控件创建4个或多个实例,例如。