You can easily use the following code to fill up your listview control from the data in a datatable using VB.NET
Supply the name of your listview and the datatable to this procedure and it will fill it up your list view.
If you wish to display the ongoing process then you can do that as well. Just create a label and then uncomment the following text in the procedure. Create a label and call it myStatusLabel.
‘ myStatusLabel.text = “Displaying Record ” & i + 1 & “/” & iRowCount
Sub FillListViewByTable(ByVal listView As ListView, ByVal dt As DataTable) Dim ii As Integer Dim iColCount As Integer = dt.Columns.Count Dim iRowCount As Integer = dt.Rows.Count listView.Clear() For ii = 0 To iColCount – 1 listView.Columns.Add(dt.Columns(ii).ColumnName, 250, HorizontalAlignment.Left) Next Dim i As Integer Dim x As Integer For i = 0 To iRowCount – 1 ‘ for each row in the table Dim lst As New ListViewItem lst.Text = dt.Rows(i).Item(0) lst.UseItemStyleForSubItems = True For x = 1 To iColCount – 1 ‘ for each column in the row of the table Application.DoEvents() lst.SubItems.Add(SNZ(dt.Rows(i).Item(x))) Next
Application.DoEvents() ‘ If you want to display the progress then you can do it here ‘ myStatusLabel.text = “Displaying Record ” & i + 1 & “/” & iRowCount listView.Items.Add(lst) lst = Nothing Next End Sub
You start with a new project and you have created a winform with graphics and the functionality which you want to use in all your other forms in the same project.
One would think that it is easily done as we can simply copy and paste the existing form and rename it and then suddenly all will be well.
That is not the case when you Control C and Control V to copy the form. You will try to rename it but you might gets lots of errors. I have struggled with this may times.
I have discovered a fool proof way which works well.
There is an Export Functionality in Visual Studio which is handy. This functionality allows you to create a template and resuse the template form in your project .
Go to File> Export Template in Visual Studio
Select ITEM Template, You can also choose Project Template ( which will appear only in your existing project).
where as ITEM template would be universally available for all new or existing projects.
Select the form which you want to clone
You might need to select the references which you want to be included, select the ones which you think will need. You can always add them later using the code in your project using the USING command in C# or IMPORTS command in VB.NET after you have cloned a form.
Provide a new name and some useful description to your new template.
when you click on Finish in Step 5 the new template will be created in the Windows Folder as you can see below.
When you click on ADD NEW ITEM in your Visual Studio project you should be able to see you newly created Template. You can use this template whenever there is a need . I found this approach simpler and safer than merely copying and pasting an existing form.
When you create a Combo Box in Visual Studio , the default behaviour is that it will show the list and it will also allow the data entry. So a user can type something in instead of selecting the options listed in the Combo Box. This can cause issues as you might want the user to only select the valid options which are listed in your combo box.
Here is a simple way to achieve this behavior. Highlight the Combo Box on your form. The properties window will be show.
Change the Drop Down Style to DropDownList as shown below.
Your combo box will not allow the users to type in any free text. they will have to select the options listed in your combo box.