2013-03-18 59 views
1

我从表中获取数据并按以下方式存储它。如何将列表项的第一个值放到C#中的文本框中?

while (results.Read()) 
{ 
    ListItem newItem = new ListItem(); 
    newItem.Text = results["TEXT_CONTENT"].ToString(); 
    newItem.Value = results["ID"].ToString(); 
} 

现在有一个文本框,我需要把我的第一个值列表。如何实现这一目标?

+0

是没可能? – 2013-03-18 19:57:19

+0

请不要只是要求我们为您解决问题。告诉我们你是如何试图自己解决问题的,然后向我们展示结果是什么,并告诉我们为什么你觉得它不起作用。请参阅“[您尝试过什么?](http://whathaveyoutried.com/)”,以获得一篇您最近需要阅读的优秀文章。 – 2013-03-18 20:01:44

+0

我尝试了我的最佳水平,刚刚接触.Net。感谢您的反馈意见。 – 2013-03-18 20:04:48

回答

1

它更改为:

Boolean assignedFirst = false; 

while (results.Read()) { 
    if (!assignedFirst) { 
    textBox1.Text = results["TEXT_CONTENT"].ToString(); 
    assignedFirst = true; 
    } 
    ListItem newItem = new ListItem(); 
    newItem.Text = results["TEXT_CONTENT"].ToString(); 
    newItem.Value = results["ID"].ToString(); 
} 

的另一种方法。您的评论表示您有这5做:

Int32 i = 0; 
while (results.Read()) { 
    switch(i) { 
    case 0: 
     textBox1.Text = results["TEXT_CONTENT"].ToString(); 
     break; 
    case 1: 
     textBox2.Text = results["TEXT_CONTENT"].ToString(); 
     break; 
    case 2: 
     textBox3.Text = results["TEXT_CONTENT"].ToString(); 
     break; 
    case 3: 
     textBox4.Text = results["TEXT_CONTENT"].ToString(); 
     break; 
    case 4: 
     textBox5.Text = results["TEXT_CONTENT"].ToString(); 
     break; 
    } 
    i++; 

     ListItem newItem = new ListItem(); 
     newItem.Text = results["TEXT_CONTENT"].ToString(); 
     newItem.Value = results["ID"].ToString(); 

} 
+0

那么,如果我有5个文本框,我会把相同的逻辑,并添加5个更多布尔变量? – 2013-03-18 20:01:34

+0

是的。尽管您可能会考虑采用不同的屏幕设计。也许为5个左右的文本框使用中继器,并简单地将结果数据绑定到中继器。 – NotMe 2013-03-18 20:06:12

+0

伟大的Chris Lively。 – 2013-03-18 20:09:59

0
while (results.Read()) 
{ 
    if (String.isNullOrEmpty(txt.Text)) 
    { 
     txt.Text = results["TEXT_CONTENT"].ToString(); 
    } 
    ListItem newItem = new ListItem(); 
    newItem.Text = results["TEXT_CONTENT"].ToString(); 
    newItem.Value = results["ID"].ToString(); 
} 
相关问题