从窗口应用程序中的列表框中读取所有项目

问题描述:

我在窗体Form c#中有两个列表框,第一个有这个时间所有有效房间&第二个有当前房间保留给Guest,&用户可以通过改变这个数据在这个listboxex之间转移。从窗口应用程序中的列表框中读取所有项目

为例如:

list1的:1D,5D,6D,1R,12R

list2中:2D,4D

用户可以删除2d和放,而不是它6D。

我需要如何在用户更新后读取list2中的所有数据,&用这个来更新我在sql server中的表。

+0

你应该张贴有关此问题的两个不同的问题。第一个问题应该是如何在用户更改后从WinForms的列表框中读取数据。第二个问题应该是如何从列表框绑定到数据库表。 –

+0

你的sql表是怎么样的,你如何填充这两个列表框? –

要将选定的项目从一个列表框复制到另一个列表框,您可以使用以下代码。确保列表框的SelectionMode是Single。这段代码读取选定的项目,将其添加到其他列表框中,并将其从当前列表框中移除。您无需将其转换为字符串,因为没有理由读取实际数据。这也允许你将复杂的对象作为listBoxItems。

object obj = listBox1.SelectedItem; 
listBox2.Items.Add(obj); 
listBox1.Items.Remove(obj); 

如果将此链接到左/右按钮,可以确保用户无法复制房间或添加超出范围的房间号。

ListBox上没有“item added”事件。当您使用BindingList作为数据源时,您可以将事件注册到绑定列表本身并对其进行响应。如果你想在名单本身产品加入事件看Item added events question for ListBox

遍历列表项:

 foreach (string s in listBox1.Items) 
     { 
      string name = s; 
     } 

在问候你的数据库传输,你想去什么样的方式?使用实体框架?直接执行SQL?

试试下面的代码:

string TimeslotItems = ""; 
foreach (ListItem item in listBox2.Items) 
{ 
    TimeslotItems += item.ToString() + ","; // /n to print each item on new line or you omit /n to print text on same line 
}