|登录 |注册

查看: 3809|回复: 19
打印 上一主题 下一主题

vb.如何将listbox里的items存进database??

[复制链接]
Autistic紅毛丹
2010-8-30 04:37 PM
请问如何将listbox/listview里面的items save进database里面呢??(microsoft access)
shippo
2010-8-30 09:34 PM
不知道你不会哪样

如果是不会拿出listBox的item:
mydata=listBox1.items.item(0)   '提出第一个items。
要拿出全部item, 先count得到listBox的size...然后for loop...把它放进array(或其他collections type)里..

如果不会database:
建议你去读点书找...要write to database 有很多方法...
dao是其中一种...
你可以试着google:vb.net dao database
Autistic紅毛丹
2010-8-30 10:12 PM
回复 2# shippo


    意思是说要一个一个count来要拿出listBox的item吗?
那如果不知道listbox里的items到底有多少个呢??(因为会随情况变动)
shippo
2010-8-30 10:52 PM
回复 3# Autistic紅毛丹


不是
是用listBox1.items.count 来检查listBox里有几个items....
然后用for loop从第一个item到最后一个item拿出来
example:
  1.      
  2.         Dim myItem() As String
  3.         ListBox1.Items.Add("aaaaa")
  4.         ListBox1.Items.Add("bbbb")
  5.         ListBox1.Items.Add("ccccc")

  6.         Dim count As Integer = ListBox1.Items.Count
  7.         ReDim myItem(count)
  8.         For i = 0 To (count - 1)
  9.             myItem(i) = ListBox1.Items.Item(i)
  10.         Next
复制代码
Autistic紅毛丹
2010-8-31 02:25 AM
本帖最后由 Autistic紅毛丹 于 2010-8-31 01:25 PM 编辑

我已经在add data source 那边添加这个db了
我若是用现成db的source(listbox,)
count了过后
  1.   Dim myItem() As String

  2.         Dim count As Integer = File_NameListBox.Items.Count

  3.         ReDim myItem(count)

  4.         For i = 0 To (count - 1)

  5.             myItem(i) = File_NameListBox.Items.Item(i)

  6.             Me.File_ListBindingSource.AddNew()("File Name") = File_NameListBox.Items(i)
复制代码
是不是这样?

那我问你哟~
如果以上的list都只是资料,我需要在database里每一个资料的旁边加一个name又要怎样?(一样名字)
数目跟i一样~
宅男-兜着走
2010-8-31 12:54 PM

  1.     Private Sub OnSelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles listItem.SelectedIndexChanged
  2.         Dim itm As String = listItem.SelectedItem
  3.         // ListBox Selected Indexx Changed 事件下执行这个动作 listView 有个Property 叫做Selected        Item。
  4.         // 看你放进去的DataType 是什么, 就宣告成什么dataType 即可。
  5.     End Sub

  6.     Private Sub OnWindowLoaded(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  7.         listItem.Items.Add("Sample Data 1")
  8.         listItem.Items.Add("Sample Data 2")
  9.         listItem.Items.Add("Sample Data 3")
  10.         listItem.Items.Add("Sample Data 4")
  11.         // Form Load 事件启动, 添加资料进入资料库。
  12.     End Sub
复制代码
Autistic紅毛丹
2010-8-31 02:49 PM
  1. Dim folderInfo As New IO.DirectoryInfo(c:\\)
  2.         Dim arrFilesInFolder() As IO.FileInfo
  3.         Dim fileInFolder As IO.FileInfo

  4.         arrFilesInFolder = folderInfo.GetFiles("*.*")
  5.         For Each fileInFolder In arrFilesInFolder
  6.             File_NameListBox.Items.Add(fileInFolder.Name)
  7.         Next
复制代码
我用以上的方式读取了一个directory的file list,请问又要怎样写才能读取subdirectiry的file list呢??
example:
-------------------------------------
c:\aa.exe
c:\folder\aa.exe
c:\folder\folder\aa.exe
-------------------------------------
Autistic紅毛丹
2010-8-31 10:44 PM
如果我的datagrid view已经有了变动,要怎样才能save去真正的database里面呢、??
宅男-兜着走
2010-8-31 11:11 PM
如果我的datagrid view已经有了变动,要怎样才能save去真正的database里面呢、??
Autistic紅毛丹 发表于 2010-8-31 10:44 PM


请问你是用 什么连接方式?

如果是  TypedDataSet的话, 直接Adapter.Update(Table); 就搞定了。
如果是 Ado.net 的话, 就得请你自己一个个Loop 出来自己Update了。
如果是 Linq To Sql 的话 就直接SubmitChanged()

所以还是请你说出你是怎么 操控资料的先。
Autistic紅毛丹
2010-9-1 12:19 AM
回复 9# 宅男-兜着走


    这个问题我解决了,因为我之前是用debug来开,不是用原始文件...有心了^^

我想问一下,如图,我的FIle Name已经有资料了,请问要如何家Drive Name呢??从textbox.text,一连串continiously~
您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2026-1-1 10:29 AM , Processed in 0.095279 second(s), 26 queries .

Powered by Discuz! X2.5 © 2001-2012 Comsenz Inc.

本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved

Dedicated Server powered by iCore Technology Sdn. Bhd.

合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部