Yes this is for a homework assignment. I am getting closer to what I need but am running into a block. my code shows how far I have gotten. I am pretty sure I can handle the washer gallons and cost part. its the second section I am aving problems with. I have included the requirements below. I have done something similar in Java to do an amortization table for a mortgage calculator. I am just really unsure of how to get it to display what i need. Any advice in the right direction would be great.
The user should be able to do the following:

• Enter the cost per kilowatt-hour.
• Select from a list of home appliances which includes a washer, among other appliances.
• Enter the power needed in kilowatts (kW) for the selected appliance.
• Enter the number of hours used per day for the selected appliance.
• If the washer is selected, enter both the number of gallons of water used by the washer per hour and the cost per gallon.

The program should do the following:

• Validate that the data entered has the correct format, and is within a reasonable range.
• Calculate and display the cost for operating a home appliance as soon as the data is entered.
• Create a listing area to display each of the following for each appliance entered:

o Home appliance
o Number of hours per day
o Cost
o Display and update the total cost of all appliances, as soon as a new entry is added to the listing area.

Public Class Form1

    Dim Power As Double
    Dim Hours As Double
    Dim Price As Double
    Dim Estimated As Double


    Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click

        txtCostPerHour.Text = "1"
        txtHours.Text = "1"
        txtPower.Text = "1"
        txtEstimated.Text = ""
        Power = CDbl(txtPower.Text)
        Hours = CDbl(txtHours.Text)
        Price = CDbl(txtCostPerHour.Text)
        'Estimated = ((Power * Hours) * Price) * 365
        'txtEstimated.Text = Estimated.ToString("C")
        cbxAppliances.SelectedIndex = -1
        cbxAppliances.Focus()

    End Sub

    Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
        Me.Close()
    End Sub

    Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click

        Power = CDbl(txtPower.Text)
        Hours = CDbl(txtHours.Text)
        Price = CDbl(txtCostPerHour.Text)
        Estimated = ((Power * Hours) * Price) * 365
        txtEstimated.Text = Estimated.ToString("C")

    End Sub

    Private Sub txtPower_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtPower.TextChanged

        If txtPower.TextLength = 0 Then
            MessageBox.Show("You must enter an amount here")
        End If

        If Not IsNumeric(txtPower.Text) Then
            MessageBox.Show("Please enter numeric values only")
        End If

    End Sub

    Private Sub txtHours_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtHours.TextChanged

        If Not IsNumeric(txtHours.Text) Then
            MessageBox.Show("Please enter numeric values only")
            txtHours.Clear()
        End If

        If txtHours.TextLength = 0 Then
            MessageBox.Show("You must enter an amount here")
        End If

    End Sub

    Private Sub txtCostPerHour_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCostPerHour.TextChanged

        If txtCostPerHour.TextLength = 0 Then
            MessageBox.Show("You must enter an amount here")
        End If

        If Not IsNumeric(txtCostPerHour.Text) Then
            MessageBox.Show("Please enter numeric values only")
        End If

    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        ' Set ListView Properties
        ListView1.View = View.Details
        ListView1.GridLines = True
        ListView1.FullRowSelect = True
        ListView1.HideSelection = False
        ListView1.MultiSelect = False

        ' Create Columns Headers
        ListView1.Columns.Add("Item Number")
        ListView1.Columns.Add("Appliance")
        ListView1.Columns.Add("Hours Used Per Day")
        ListView1.Columns.Add("Annual Cost for Each Item")
        ListView1.Columns.Add("Total Annual Cost for All Items")

        Dim tempValue As Integer = 0

        For i As Integer = 1 To 9

            ' Create List View Item (Row)
            Dim lvi As New ListViewItem

            ' First Column can be the listview item's Text
            lvi.Text = i.ToString

            ' Second Column is the first sub item
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)

            ' Third Column is the second sub item
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)
            ' Fourth Column is the second sub item
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)
            ' Fifth Column is the second sub item
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)

            ' Add the ListViewItem to the ListView
            ListView1.Items.Add(lvi)

        Next

    End Sub

End Class
Public Class Form1
    Dim Power As Double
    Dim Hours As Double
    Dim Price As Double
    Dim Estimated As Double


    Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
        txtCostPerHour.Text = "1"
        txtHours.Text = "1"
        txtPower.Text = "1"
        txtEstimated.Text = ""
        Power = CDbl(txtPower.Text)
        Hours = CDbl(txtHours.Text)
        Price = CDbl(txtCostPerHour.Text)
        'Estimated = ((Power * Hours) * Price) * 365
        'txtEstimated.Text = Estimated.ToString("C")
        cbxAppliances.SelectedIndex = -1
        cbxAppliances.Focus()
    End Sub

    Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
        Me.Close()

    End Sub

    Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click
        Power = CDbl(txtPower.Text)
        Hours = CDbl(txtHours.Text)
        Price = CDbl(txtCostPerHour.Text)
        Estimated = ((Power * Hours) * Price) * 365
        txtEstimated.Text = Estimated.ToString("C")


    End Sub

    Private Sub txtPower_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtPower.TextChanged
        If txtPower.TextLength = 0 Then
            MessageBox.Show("You must enter an amount here")
        End If
        If Not IsNumeric(txtPower.Text) Then
            MessageBox.Show("Please enter numeric values only")
        End If
    End Sub

    Private Sub txtHours_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtHours.TextChanged
        If Not IsNumeric(txtHours.Text) Then
            MessageBox.Show("Please enter numeric values only")
            txtHours.Clear()
        End If
        If txtHours.TextLength = 0 Then
            MessageBox.Show("You must enter an amount here")
        End If


    End Sub

    Private Sub txtCostPerHour_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCostPerHour.TextChanged
        If txtCostPerHour.TextLength = 0 Then
            MessageBox.Show("You must enter an amount here")
        End If
        If Not IsNumeric(txtCostPerHour.Text) Then
            MessageBox.Show("Please enter numeric values only")
        End If
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' Set ListView Properties  
        ListView1.View = View.Details
        ListView1.GridLines = True
        ListView1.FullRowSelect = True
        ListView1.HideSelection = False
        ListView1.MultiSelect = False

        ' Create Columns Headers  
        ListView1.Columns.Add("Item Number")
        ListView1.Columns.Add("Appliance")
        ListView1.Columns.Add("Hours Used Per Day")
        ListView1.Columns.Add("Annual Cost for Each Item")
        ListView1.Columns.Add("Total Annual Cost for All Items")

        Dim tempValue As Integer = 0

        For i As Integer = 1 To 9

            ' Create List View Item (Row)  
            Dim lvi As New ListViewItem

            ' First Column can be the listview item's Text  
            lvi.Text = i.ToString

            ' Second Column is the first sub item  
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)

            ' Third Column is the second sub item  
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)
            ' Fourth Column is the second sub item 
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)
            ' Fifth Column is the second sub item 
            tempValue = tempValue + 1
            lvi.SubItems.Add(tempValue.ToString)

            ' Add the ListViewItem to the ListView  
            ListView1.Items.Add(lvi)

        Next
    End Sub
End Class
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.