Solved

XPTable SelectionChanged

Posted on 2006-11-05
11
953 Views
Last Modified: 2012-06-21
Need som help with SelectionChanged on the XPTable

http://www.codeproject.com/cs/miscctrl/XPTable.asp

I have this..

Private Sub TableTest_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As XPTable.Events.SelectionEventArgs) Handles TableTest_.SelectionChanged

End sub

I need this for the XPTable

    Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged
        If (ListView1.SelectedItems.Count) > 0 Then
            Dim this As Integer = DirectCast(ListView1.SelectedItems(0), ListViewItem).Index
            Dim strTemp As String

            Try
                If this >= 0 Then
                    ' Get the marked item from listview
                    strTemp = (ListView1.SelectedItems(0).SubItems(0).Text).ToString
                End If
            Catch ex As Exception
                Throw ex
            End Try

        End If
    End Sub
0
Comment
Question by:NissePPP
  • 6
  • 5
11 Comments
 
LVL 1

Author Comment

by:NissePPP
Comment Utility
I can add this code if this will help, but I don't want to use the loop, I don't have any multi select on rows          

This works.. (For Each...) )bur I want the    strTemp = (ListView1.SelectedItems(0).SubItems(0).Text).ToString

For Each row As XPTable.Models.Row In TableTest.TableModel.Selections.SelectedItems
            '    'show the item in your first column
              MessageBox.Show(row.Cells(0).Text)
Next
 
I have tested this but this only selects the row and cell I i want, but I need the row the user selects            .

strTemp = TableTest.TableModel.Item(intRow, intCell).Text().ToString()

Maybe this code can help..
0
 
LVL 96

Expert Comment

by:Bob Learned
Comment Utility
Confused.

Bob
0
 
LVL 1

Author Comment

by:NissePPP
Comment Utility
Ok..

I have a XPTable. it's a modified listview.

I need a function that works like my listveiw function.

This function is used when I need to collect data from a row. When selectedindex is changed.. I can get the row that the user has clicked on..

 Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged
...........
.........
End sub

Now I need the same for my xptable..

And this is what I have now.. It works when selectedindex is change the te sub is executed,,

Private Sub TableTest_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As XPTable.Events.SelectionEventArgs) Handles TableTest_.SelectionChanged

End sub

But I need the code inside this function . To get the data from the row.



I need this code for the xptable. It's not possible to just change the listview with the xptable.
So I need to translate this, so it works with xptable..


        If (ListView1.SelectedItems.Count) > 0 Then
            Dim this As Integer = DirectCast(ListView1.SelectedItems(0), ListViewItem).Index
            Dim strTemp As String

            Try
                If this >= 0 Then
                    ' Get the marked item from listview
                    strTemp = (ListView1.SelectedItems(0).SubItems(0).Text).ToString
                End If
            Catch ex As Exception
                Throw ex
            End Try

        End If
0
 
LVL 96

Expert Comment

by:Bob Learned
Comment Utility
Where are you having problems with that code?

Bob
0
 
LVL 1

Author Comment

by:NissePPP
Comment Utility
I need this for the XPtable..    

    If (ListView1.SelectedItems.Count) > 0 Then
            Dim this As Integer = DirectCast(ListView1.SelectedItems(0), ListViewItem).Index
            Dim strTemp As String

            Try
                If this >= 0 Then
                    ' Get the marked item from listview
                    strTemp = (ListView1.SelectedItems(0).SubItems(0).Text).ToString
                End If
            Catch ex As Exception
                Throw ex
            End Try
 Eind if


But i can't just do this.. Xptable object name is TableTest


This dosen't work..

    If (TableTest.SelectedItems.Count) > 0 Then
            Dim this As Integer = DirectCast(TableTest.SelectedItems(0), ListViewItem).Index
            Dim strTemp As String

            Try
                If this >= 0 Then
                    ' Get the marked item from listview
                    strTemp = (TableTest.SelectedItems(0).SubItems(0).Text).ToString
                End If
            Catch ex As Exception
                Throw ex
            End Try
      end if
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 96

Expert Comment

by:Bob Learned
Comment Utility
If you are using XPTable.Models.Table, it has the SelectionChanged event, and this:

      XPTable.Models.Row row = this.table.SelectedItems[0];

Bob
0
 
LVL 1

Author Comment

by:NissePPP
Comment Utility
Hmm ok, but I need to get the iitem from the selected row

 strTemp = (TableTest.SelectedItems(0).SubItems(0).Text).ToString ...but  with xxptable code..

how does

XPTable.Models.Row row = Me.table.SelectedItems(0)

get the selected row from my XpTable and into my string variable.

I'm new on this sorry.. :(

 
0
 
LVL 96

Expert Comment

by:Bob Learned
Comment Utility
XPTable.Models.Row row = this.table.SelectedItems[0];
string strTemp = row.Cells[0].Text;

Bob
0
 
LVL 1

Author Comment

by:NissePPP
Comment Utility
Thx.. works great. But how do I count the selected rows.

I want to do this.. But I can't find count.

TableTest.SelectedItems.Count
0
 
LVL 96

Accepted Solution

by:
Bob Learned earned 500 total points
Comment Utility
SelectedItems is an array, so you need this:

   TableTest.SelectedItems.Length

Bob
0
 
LVL 1

Author Comment

by:NissePPP
Comment Utility
This is the complete code if any want it..

Thx Bob for all the help.. :)

Private Sub TableTest_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As XPTable.Events.SelectionEventArgs) Handles TableTest.SelectionChanged

        If (TableTest.SelectedItems.Length) > 0 Then
            Dim this As Integer = DirectCast(TableTest.SelectedItems(0), XPTable.Models.Row).Index
            Dim strTemp As String
            Dim row As XPTable.Models.Row

            Try
                If this >= 0 Then
                    ' Get the marked item from listview
                    row = Me.TableTest.SelectedItems(0)
                    strTemp = row.Cells(0).Text
                End If
            Catch ex As Exception
                Throw ex
            End Try
        End If

End sub
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

Since .Net 2.0, Visual Basic has made it easy to create a splash screen and set it via the "Splash Screen" drop down in the Project Properties.  A splash screen set in this manner is automatically created, displayed and closed by the framework itsel…
Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now