Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 如何在代码中从listview检索列项_Wpf_Vb.net_Listview_Datagrid - Fatal编程技术网

Wpf 如何在代码中从listview检索列项

Wpf 如何在代码中从listview检索列项,wpf,vb.net,listview,datagrid,Wpf,Vb.net,Listview,Datagrid,我是wpf的新手,准备参加MCTS考试。我已经搜索了两天了,关于如何在代码中检索行-列项目。通过创建一个结构并通过代码添加行项目,我已经能够将数据插入到listview中 Public Structure SimpleData Public Property Txt1 As String Get Return mTxt1 End Get Set(value As String) mTxt1 =

我是wpf的新手,准备参加MCTS考试。我已经搜索了两天了,关于如何在代码中检索行-列项目。通过创建一个结构并通过代码添加行项目,我已经能够将数据插入到listview中

Public Structure SimpleData
    Public Property Txt1 As String
        Get
            Return mTxt1
        End Get
        Set(value As String)
            mTxt1 = value
        End Set
    End Property
    Private mTxt1 As String
    Public Property Txt2 As String
        Get
            Return mTxt2
        End Get
        Set(value As String)
            mTxt2 = value
        End Set
    End Property
    Private mTxt2 As String
    Public Property Txt3 As String
        Get
            Return mTxt3
        End Get
        Set(value As String)
            mTxt3 = value
        End Set
    End Property
    Private mTxt3 As String
End Structure
Public Structure MyData
    Public Property Desc() As String
        Get
            Return m_Desc
        End Get
        Set(value As String)
            m_Desc = Value
        End Set
    End Property
    Private m_Desc As String
    Public Property Progress() As Integer
        Get
            Return m_Progress
        End Get
        Set(value As Integer)
            m_Progress = Value
        End Set
    End Property
    Private m_Progress As Integer
    Public Property ProgressText() As String
        Get
            Return m_ProgressText
        End Get
        Set(value As String)
            m_ProgressText = Value
        End Set
    End Property
    Private m_ProgressText As String
    Public Property Pic() As String
        Get
            Return m_Pic
        End Get
        Set(value As String)
            m_Pic = Value
        End Set
    End Property
    Private m_Pic As String
End Structure

Private Sub Button2_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button2.Click
    Dim sd As New SimpleData
    sd.Txt1 = "Today is"
    sd.Txt2 = "a good day"
    sd.Txt3 = "O YES!"
    listView1.Items.Add(sd)
End Sub

我希望能够检索行(0).Item(0).ToString,这是如何在win表单中检索它的。期待回应。提前感谢

我找到了答案,将listview项强制转换到创建的结构SimpleData,然后在其中循环

            Dim constr As String = "Put your connection string here"
            Dim ds As New DataSet
            Dim con As New SqlClient.SqlConnection(constr)
            con.Open()
            Dim sqladap As New SqlClient.SqlDataAdapter("select * from tbl_Employee", con)
            sqladap.Fill(ds)

            For i As Integer = 0 To ds.Tables(0).Columns.Count - 1
                ListView1.Columns.Add(ds.Tables(0).Columns(i).ToString())
            Next
            For i As Integer = 0 To ds.Tables(0).Rows.Count - 1
                Dim listRow As New ListViewItem
                listRow.Text = ds.Tables(0).Rows(i)(0).ToString()
                For j As Integer = 1 To ds.Tables(0).Columns.Count - 1
                    listRow.SubItems.Add(ds.Tables(0).Rows(i)(j).ToString())
                Next
                ListView1.Items.Add(listRow)
            Next

Read data  from Listview :

Dim name, room, subject, date, period As String
If listviewName.SelectedItems.Count > 0 then
    For i As Integer = 0 To listviewName.SelectedItems.Count - 1
        '*********** transfer selected data on declare String variable ************'
        name= listviewName.SelectedItems(i).SubItems(0).Text
        room = listviewName.SelectedItems(i).SubItems(1).Text
        subject = listviewName.SelectedItems(i).SubItems(2).Text
        date= listviewName.SelectedItems(i).SubItems(3).Text
        period= listviewName.SelectedItems(i).SubItems(4).Text
        '*********** delete **************'
        cmd1.Connection = MYSQLCON
        MYSQLCON.Open()
        cmd1.CommandText = "DELETE FROM tablename WHERE columnname = '" & name & "'"
        reader = cmd1.ExecuteReader
        MYSQLCON.Close()
   Next
End If
        Dim getitems = CType(listView1.SelectedItem, SimpleData)
        For Each mem In getitems.Txt1
            MsgBox(mem.ToString)
        Next

我通过文本框中的文本输入listview,现在我想将这些项添加到我的数据库中。我尝试这样做:Dim lv as new listitemview lv=listview1.items msgbox lv.items(0)子项(1)ToString,但intellisense拒绝了它。我可以通过将listview.selecteditems强制转换到结构SimpleDate并使用循环选择它来找到这些项。Dim getitems=CType(listView1.SelectedItem,SimpleData),用于getitems.Txt1 MsgBox(mem.ToString)下一步中的每个mem