在列表框中显示项目的可能性是啥?
Posted
技术标签:
【中文标题】在列表框中显示项目的可能性是啥?【英文标题】:What are the possibilities of displaying items in a listbox?在列表框中显示项目的可能性是什么? 【发布时间】:2011-01-13 16:43:14 【问题描述】:我一直在尝试弄清楚如何创建一个界面,该界面可以允许用户输入多行数据并将这些条目一次性传递到 SQL Server 数据库中。我想不出更好的主意,所以我想出了这个(见下图)。
我的设想是用户在文本框中输入值并点击“添加到列表”按钮。然后将值填充到下面的列表框中,标题为“展览列表”,当按下添加展览按钮时,列表框中的所有值都会传递到数据库中。
好吧,我又想知道是否可以将这些值从文本框绑定到列表框,以及是否可以将它们传递到数据库中。
如果可能的话,我很想知道如何去做一次。
我相信这个网站上有一些有用的信息可以帮助解决我的问题,但我就是无法理解这篇文章的正面或反面......似乎我快到了,但它打滑了。每个人都可以阅读并帮助我适应我的情况吗?在下面发帖:
http://www.codeproject.com/KB/aspnet/ExtendedGridView.aspx
【问题讨论】:
也许我没有完全关注您,但是是什么阻止您像string value = textbox.Text
那样单独访问数据字段,浏览所有输入字段,并像这样构建您的插入查询?
不幸的是,这将是最后的手段。这里的类比是多个展品(Exhibit Type、Exhibit Image...等)可以注册到一个案例(CaseID)。因此,我希望有一个更好的界面来接受多个条目,我可以将这些条目绑定到(CASEID)并一次或更好地传递插入我仍然可以使用这种方法,其中(展览类型,展览图像......等)的每个条目都临时保存在列表框中,并且在用户完成必须的展览列表之后
注册到案例,他们点击添加展示按钮,文本框中的值被插入到数据库中,每个循环都有某种形式。那就是如果这样的事情是可能的......但是如果任何一种方式都是可能的并且没有任何想法,那么id别无选择,只能一次插入一个。这可能会使设计的时间效率降低.. .:(..在那里失去一些标记...
为什么需要一次发送全部数据。如果是这样,您将如何区分并将它们写入每个单独的列。添加到列表框不是问题,但将整个数据插入在一起并不好
@Dorababu- 因为我希望通过允许用户执行一次操作来节省时间,但是插入可以在每个循环中运行,直到没有更多可用的事件......我希望这听起来不像垃圾??
【参考方案1】:
是的,这是可能的。我以前做过两次。
查看http://www.asp.net/web-forms/data 的“数据访问教程”以获取想法。
概述
对于用户界面,您需要数据网格上方的数据输入表单。 对于后端,您需要一个数据适配器(或表适配器),在一次操作中加载和保存数据到数据库。您将使用DataSet
和DataAdapter
来更新数据库,并为输入操作DataRow
,为列表框操作DataTable
。请注意,列表框实际上是一个数据网格、转发器或其他接受DataTable
作为DataSource
的控件。
DataAdapter
填充包含DataTable
的DataSet
。
输入控件绑定到从DataTable
创建的DataRow
。当用户单击添加到列表时,您将数据行添加到数据表中,然后为下一项创建新的数据行。
当用户点击 add-exhibit 时,使用DataAdapter
更新数据库是一件简单的事情。任何更改、删除和添加的数据都会为您处理。
【讨论】:
哦!亲切.... AMissico!...你为什么让我等了这么久....非常感谢...如果我那样做,我也能处理插入吗? @Selase:是的。插入也是如此。 AMissico!..你能给我一个例子,说明如何使用输入到文本框中的数据来操作数据列表......我无法从你提供的链接中弄清楚这一点。如果您还可以添加一个示例,说明如何使用数据列表中的值更新数据库。非常依赖您的快速反应。谢谢。【参考方案2】:您可以使用事务来封装您尝试运行的所有 sql 查询,这样您就可以将事务“提交”到数据库中?你还在为这个问题而烦恼吗?
【讨论】:
以上是关于在列表框中显示项目的可能性是啥?的主要内容,如果未能解决你的问题,请参考以下文章