/ / zobrazenie všetkých riadkov konkrétneho stĺpca v textovom poli - vb.net, visual-studio-2010, vb.net-2010

zobrazenie všetkých riadkov konkrétneho stĺpca v textovom poli - vb.net, visual-studio-2010, vb.net-2010

Používam vizuálne štúdio 2010 so serverom sql 2008 ako späť, mám problém pri zobrazovaní všetky riadky konkrétneho stĺpca v textovom poli. Skúsil som to,

cmd.CommandText = "select article_no from  main where name="" & TextBox1.Text & """

cmd.Connection = con

con.Open()

Dim dr As SqlDataReader

dr = cmd.ExecuteReader

If dr.HasRows Then

dr.Read()

TextBox2.Text = dr.Item("article_no")

End If

con.Close()

Ale môžem zobraziť len prvý riadokkonkrétny názov, ktorý zadávam do textbox1 miesto toho musím zobraziť všetky riadky, ktoré pozostávajú z rovnakého názvu zadaného v textbox1 a mali by sa zobraziť v textbox2.

tak mi prosím, aby mi niekto pomohol s potrebnou logikou.

vopred ďakujem

odpovede:

0 pre odpoveď č. 1

možno nemôžete zobraziť všetky riadky, pretože vypoužívajú textové pole. Do textového poľa bude pridaný iba jeden záznam, a možno to môžete urobiť aj nastavením vlastnosti multiline na textové pole na hodnotu true. Namiesto toho navrhujem použiť listbox a urobiť to

If dr.HasRows Then
While dr.Read()
ListBox1.Add(dr.Item("article_no"))
End While
End If

0 pre odpoveď č. 2

Zdá sa, že je potrebné nastaviť, aby textová karta bola viacnásobná, alebo budete pravdepodobne potrebovať ručné prerušenie riadkov.

Pozrite sa tu na tú istú odpoveď: (Podobná odpoveď)


0 pre odpoveď č. 3

Ak chcete zobraziť všetky riadky, budete potrebovať slučku v datatebni. Skúste to;

If dr.HasRows Then

For Each _dr As DataRow In dr.Rows

_dr.Read()

TextBox2.Text = String.Concat(TextBox2.Text, ",", _dr.Item("article_no"))

Next
End If

Použitie čiar , ako oddeľovače vo vašom textbox2


0 pre odpoveď č. 4

Prečo to nerobiť Multiline so zvislou posuvnou lištou:

 TextBox2.Multiline = True
TextBox2.ScrollBars = ScrollBars.Vertical

Potom, keď prechádzate, robíte:

 TextBox2.Text &= dr.Item("article_no") & Environment.NewLine