c# - 如何在flowlayoutpanel中动态添加文本框和标签并将它们存储在数据库中?

标签 c# winforms

我正在制作节奏套准,我正在使用 Flowlayoutpanel。
我想要做的是根据用户的需要动态创建标签和文本框。 用户将如图所示输入他/她的任务,然后它将用数字告诉目标。

例如阅读书页。目标将分为 7 天。 Actual=Goal/7 前面的文本框。 Done 前面的文本框将显示用户输入的用户当天做了什么。
我在这里面临的问题是,如何创建另一个具有如图所示的相同文本框和标签的 FlowLayout 面板,以显示多个用户任务。

此外,我对将它们存储到数据库很感兴趣。

有人可以帮助我吗?

最佳答案

将形成整体的标签和文本框组合到一个 UserControl 中。 UserControl 设计器的工作方式类似于 Form 设计器。您可以在其上放置控件,可以创建事件处理程序并添加属性以使控件的值可公开访问。

我也会将您添加到 flowLayoutPanel1 的控件存储在一个列表中;这使得从代码访问它们并将相应的值存储在数据库中变得更加容易。

private List<TaskUserControl> _tasks = new List<TaskUserControl>();

private void AddTask()
{
    var task = new TaskUserControl();
    _tasks.Add(task);
    flowLayoutPanel1.Controls.Add(task);
}

How to: Add Rows to a DataTable (msdn)
How to add a new row to an existing table using c# sql server (计算器)

关于c# - 如何在flowlayoutpanel中动态添加文本框和标签并将它们存储在数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13441587/

相关文章:

c# - 如何将 ContextMenuStrip 添加到 ToolStripMenuItem

c# - 在 Mono 3 (Ubuntu 12.10) 上使用 WinForms

c# - Visual Studio 2008 表单继承和泛型加载失败

c# - 如何将 List<object> 转换为 Json 格式并在 C# 中填充 <tbody>?

c# - 添加到工作项的超链接(而不是到另一个工作项的链接)

c# - 使用 CanExecute 参数调用 RelayCommand<T>

c# - 泛型类型推断在 C# 中如何工作?

c# - 移动后标签页标题保持在箭头按钮下方

c# - 具有一个类的多个公共(public)别名的类库

visual-studio - 使用通用 EventHandler<> 的事件在设计器中不可见