我有一个列表框,其中填充了以下代码:
在列表框lstOutcome中,我需要能够遍历 列表框,并能够取得的价值 第一,第二等列出项目。
我需要遍历每一行并抓住它的原因 该行的价值是如此我可以使用任何值 用于填充其他内容的那一行。
例如,在我的列表框中,我有:
我需要能够在按钮上循环列表框 单击并将值分配给txtboxes:
我不确定我是否需要一个数组或者这是怎么回事 实现。这个例子的重点是我会 实际上是使用列表框中的项来映射列。一世 我正在导入Microsoft Excel电子表格。在lstMap我有 列名称,我试图让列名匹配 我的数据库。使用此代码我试图获取值 列表框:
foreach(object li in lstOutcome.Items)
{
bulkCopy.DestinationTableName = "Customers";
//Amount to bulkcopy at once to prevent slowing with large imports.
bulkCopy.BatchSize = 200;
SqlBulkCopyColumnMapping map1 = new SqlBulkCopyColumnMapping(li.ToString(), "CustomerID");
bulkCopy.ColumnMappings.Add(map1);
答案 0 :(得分:1)
您需要将文本框放在一个数组中,如下所示:
Textbox[] textboxes = new Textbox[] { textbox, textbox2, textbox3 };
for (int i = 0; i < listBox1.Items.Count; i++) {
textboxes[i].Text = "Item: " + listBox1.Items[i].ToString();
}
请注意,如果列表框中有三个以上的项目,则会失败,因为它将耗尽文本框。要获得更完整的解决方案,请添加一些上下文。什么是文本框?列表框中的数据是什么来的?
答案 1 :(得分:1)
编写答案的更有效方法是:
static readonly string[] FieldNames = new string[] { "CustomerID", "Name", "Address", ..., "Email" };
using(SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString, options)) {
bulkCopy.DestinationTableName = "Customers";
//amount to bulkcopy at once to prevent slowing with large imports
bulkCopy.BatchSize = 200;
for(int i = 0; i < FieldNames.Length; i++) {
bulkCopy.ColumnMappings.Add(
new SqlBulkCopyColumnMapping(lstOutcome.Items[i].ToString(), FieldNames[i])
);
}
}
答案 2 :(得分:0)
我让它工作,看看这个代码amigo的
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString, options))
{
ArrayList myList = new ArrayList();
foreach (ListItem li in lstOutcome.Items)
{
myList.Add(li);
}
bulkCopy.DestinationTableName = "Customers";
//amount to bulkcopy at once to prevent slowing with large imports
bulkCopy.BatchSize = 200;
SqlBulkCopyColumnMapping map1 = new SqlBulkCopyColumnMapping(myList[0].ToString(), "CustomerID");
bulkCopy.ColumnMappings.Add(map1);
SqlBulkCopyColumnMapping map2 = new SqlBulkCopyColumnMapping(myList[1].ToString(), "Name");
bulkCopy.ColumnMappings.Add(map2);
SqlBulkCopyColumnMapping map3 = new SqlBulkCopyColumnMapping(myList[2].ToString(), "Address");
bulkCopy.ColumnMappings.Add(map3);
SqlBulkCopyColumnMapping map4 = new SqlBulkCopyColumnMapping(myList[3].ToString(), "City");
bulkCopy.ColumnMappings.Add(map4);
SqlBulkCopyColumnMapping map5 = new SqlBulkCopyColumnMapping(myList[4].ToString(), "State");
bulkCopy.ColumnMappings.Add(map5);
SqlBulkCopyColumnMapping map6 = new SqlBulkCopyColumnMapping(myList[5].ToString(), "ZipCode");
bulkCopy.ColumnMappings.Add(map6);
SqlBulkCopyColumnMapping map7 = new SqlBulkCopyColumnMapping(myList[6].ToString(), "Phone");
bulkCopy.ColumnMappings.Add(map7);
SqlBulkCopyColumnMapping map8 = new SqlBulkCopyColumnMapping(myList[7].ToString(), "Email");
bulkCopy.ColumnMappings.Add(map8);