如何在WPF中将标签的内容设置为数据库表单元格
本文关键字:设置 数据库 单元格 表单 WPF 标签 | 更新日期: 2023-09-27 17:49:58
我用Visual Basic在WPF中编写了一个程序,允许用户从一系列项目中进行选择。当我添加更多的项目或删除旧的项目时,项目列表可能会改变。最初,我只是在项目代码中添加和删除这些项,并重新构建可执行文件。
然而,随着时间的推移,项目列表变得越来越长,在代码中维护变得乏味和不切实际。我突然想到,将项目存储在程序可以读取的数据库表中会更容易,并且可以通过从该数据库中添加和删除项目来更新列表。我已经建立了数据库,并将其添加为数据源。我已经把数据连接设置好了,一切都准备好了。
我需要知道的是如何将标签的Content
属性从数据库中的表设置为单元格。我想在后面的代码中完成此操作,而不是在标记(XAML)中。
我的猜测是,我需要设置一种带有for
循环的查询来找到我想要的单元格。
数据库名称为ItemsDB
。它包含一个名为ItemsTable
的表,表中的字段具有AutoNumber
数据类型的唯一ID(键)。包含我想要的数据的列被命名为ItemLabel
。
所以,总而言之,我想要一个标签来显示数据库中单个单元格的内容,在代码后面指定。c#或VB都可以。
编辑
我想我应该提到标签本身实际上是按钮的功能,如果没有必要,我真的不想显示ListView
。我知道没有任何代码发布是没有帮助的,但我甚至不知道从哪里开始,所以没有代码发布。
花了比我预期的更长的时间,希望这仍然有用。因此,您要做的是遍历集合并为每一行创建一个新的Label
。
您将需要一个Labels
的容器,我使用的是WrapPanel
,但您可以使用任何Panel
。我用一个简单的DataTable
代替你的Data Source
,你会从中得到点:
foreach (DataRow row in YourItemsTable.Rows)
{
Label newLabel = new Label();
newLabel.Content = row["ItemLabel"].ToString();
// If you need some events, attach the handlers here
yourParentContainerPanel.Children.Add(newLabel);
}