Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Listbox

Postades av 2004-04-16 11:08:09 - Mikael Johansson, i forum asp.net generellt, Tråden har 3 Kommentarer och lästs av 655 personer

Hej!

Har en listbox som hämtar data från en databas. Där ska man kunna välja flera olika objekt och för varje objekt som väljs ska ett värde från en dropdownlist läggas in. Så långt fungerar det. Problemet är när antalet objekt i listboxen understiger 100, då blir det fel. Försökte lösa det med if-satsen nedan, men den uppdaterar inte (får inget felmeddelande). Vore mycket tacksam för hjälp. Det är ASP.NET och VB.

Sub Update(sender As Object, e As System.EventArgs)
Dim count2 As Integer = "0"
Do While count2 < "100"
If ListBox2.Items(count2).Selected
If ListBox2.Items(count2).Text <> ""
Dim connectionString As String = "server='(local)'; trusted_connection=true; database='data'"
Dim dbConnection As System.Data.IDbConnection = New System.Data.SqlClient.SqlConnection(connectionString)

Dim queryString As String = "UPDATE [data] SET [Ansvarig]=@Ansvarig, [Utdelat]='1' WHERE ([data].[Nummer] = @CheckBoxList1)"
Dim dbCommand As System.Data.IDbCommand = New System.Data.SqlClient.SqlCommand
dbCommand.CommandText = queryString
dbCommand.Connection = dbConnection

Dim dbParam_namn As System.Data.IDataParameter = New System.Data.SqlClient.SqlParameter
dbParam_namn.ParameterName = "@Ansvarig"
dbParam_namn.Value = DropDownList1.SelectedItem.Value
dbParam_namn.DbType = System.Data.DbType.String
dbCommand.Parameters.Add(dbParam_namn)
Dim dbParam_pass As System.Data.IDataParameter = New System.Data.SqlClient.SqlParameter
dbParam_pass.ParameterName = "@CheckBoxList1"
dbParam_pass.Value = ListBox2.Items(count2).Text
dbParam_pass.DbType = System.Data.DbType.String
dbCommand.Parameters.Add(dbParam_pass)

Dim rowsAffected As Integer = 0
dbConnection.Open
Try
rowsAffected = dbCommand.ExecuteNonQuery
Finally
dbConnection.Close
End Try
count2 = count2 + 1
Else
count2 = count2 + 1
End If
Else
count2 = count2 + 1
End If
Loop
Response.Redirect("mission.aspx")
End Sub


Svara

Sv: Listbox

Postades av 2004-04-16 13:23:28 - Mikael Johansson

Jag glömde att skriva att när jag väljer flera värden i listboxen och uppdaterar databaser så försvinner dessa värden från listan, därav problemet. När antalet i listboxen är under 100 så kommer felen.


Svara

Sv: Listbox

Postades av 2004-04-16 15:38:49 - Patrik Dahlén

Jag antar att du databinder din lista i Page_Load. Har du satt dit
<code>
If Not IsPostBack Then
</code>
så att du inte databinder igen när du gör postback:en för Update?
Det skulle i så fall förklara varför valda värden försvinner.

/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nu


Svara

Sv: Listbox

Postades av 2004-04-16 15:48:02 - Mikael Johansson

Tack för tipset, löste problemet genom att göra om koden lite:

Dim list As Integer = ListBox1.Items.Count
Dim count As Integer = "0"
Do While count < list
If ListBox1.Items(count).Selected Then
Dim connectionString As String = "server='(local)'; trusted_connection=true; database='data'"
Dim dbConnection As System.Data.IDbConnection = New System.Data.SqlClient.SqlConnection(connectionString)

Dim queryString As String = "UPDATE [data] SET [Ansvarig]=@Ansvarig, [Utdelat]='1' WHERE ([data].[Nummer] = @CheckBoxList1)"
Dim dbCommand As System.Data.IDbCommand = New System.Data.SqlClient.SqlCommand
dbCommand.CommandText = queryString
dbCommand.Connection = dbConnection

Dim dbParam_namn As System.Data.IDataParameter = New System.Data.SqlClient.SqlParameter
dbParam_namn.ParameterName = "@Ansvarig"
dbParam_namn.Value = DropDownList1.SelectedItem.Value
dbParam_namn.DbType = System.Data.DbType.String
dbCommand.Parameters.Add(dbParam_namn)
Dim dbParam_pass As System.Data.IDataParameter = New System.Data.SqlClient.SqlParameter
dbParam_pass.ParameterName = "@CheckBoxList1"
dbParam_pass.Value = ListBox1.Items(count).Text
dbParam_pass.DbType = System.Data.DbType.String
dbCommand.Parameters.Add(dbParam_pass)

Dim rowsAffected As Integer = 0
dbConnection.Open
Try
rowsAffected = dbCommand.ExecuteNonQuery
Finally
dbConnection.Close
End Try
count = count + 1
Else
count = count + 1
End If
Loop


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 166
27 952
271 704
818
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies