I am writing a program which does a lot of processes at once. To keep the user from thinking the program crashed, I decided to add a "Please Wait" window. Everything works fine except for one thing: the form doesn't fully render until 30 seconds later. Before that the "Please wait until..." text that is supposed to be in the form is just a white rectangle.
Can you please tell me how I can fix this issue? Thanks!
Edit:
As I assumed everyone had a crystal ball and could read my virtual mind, I forgot to include the code >.>;;
Here it is:
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    Dim pleasewait As New TestEspere
    CenterForm(pleasewait)
    pleasewait.Show()
    Dim quantity, quantity_purchased As Integer
    Dim tracking_usps, lybro_id, recipient_name, order_id, order_item_id, payments_transaction_id, product_id, description, listing_id, sku,
           batch_id, buyer_email, buyer_name, address_1, address_2,
        city, state, zip, country, special_comments, upc, status_shipment, loc, tracking, etc, eff As String
    Dim total_price, peso, order_price, shipping_price As Decimal
    Dim purchase_date, payments_date As Date
    For i = 0 To DataGridView1.Rows.Count - 1
        On Error GoTo netx
        If IsDBNull(DataGridView1(0, i).Value) Then Exit For
        DataGridView1(33, i).Value = TrackingRequest(Replace(DataGridView1(32, i).Value, "'", ""))
        lybro_id = DataGridView1(0, i).Value
        order_id = DataGridView1(1, i).Value
        order_item_id = If(IsDBNull(DataGridView1(2, i).Value), "", DataGridView1(2, i).Value)
        payments_date = String.Format("{0:yyyy-MM-dd}", DataGridView1(3, i).Value.ToString)
        quantity = DataGridView1(4, i).Value
        payments_transaction_id = If(IsDBNull(DataGridView1(5, i).Value), "", DataGridView1(5, i).Value)
        product_id = DataGridView1(6, i).Value
        description = Replace(DataGridView1(7, i).Value, "'", "''")
        peso = DataGridView1(8, i).Value
        listing_id = If(IsDBNull(DataGridView1(9, i).Value), "", DataGridView1(9, i).Value)
        sku = DataGridView1(10, i).Value
        order_price = DataGridView1(11, i).Value
        shipping_price = DataGridView1(12, i).Value
        quantity_purchased = DataGridView1(13, i).Value
        total_price = DataGridView1(14, i).Value
        purchase_date = String.Format("{0:yyyy-MM-dd}", DataGridView1(15, i).Value.ToString )
        batch_id = If(IsDBNull(DataGridView1(16, i).Value), "", DataGridView1(16, i).Value)
        buyer_email = DataGridView1(17, i).Value
        buyer_name = Replace(DataGridView1(18, i).Value, "'", "''")
        recipient_name = Replace(DataGridView1(19, i).Value, "'", "''")
        address_1 = Replace(DataGridView1(20, i).Value, "'", "''")
        address_2 = If(IsDBNull(DataGridView1(21, i).Value), "", DataGridView1(21, i).Value)
        city = Replace(DataGridView1(22, i).Value, "'", "''")
        state = If(IsDBNull(DataGridView1(23, i).Value), "", Replace(DataGridView1(23, i).Value, "'", "''"))
        zip = DataGridView1(24, i).Value
        country = Replace(DataGridView1(25, i).Value, "'", "''")
        special_comments = If(IsDBNull(DataGridView1(26, i).Value), "", Replace(DataGridView1(26, i).Value, "'", "''"))
        upc = If(IsDBNull(DataGridView1(27, i).Value), "", DataGridView1(27, i).Value)
        etc = If(IsDBNull(DataGridView1(28, i).Value), "", DataGridView1(28, i).Value)
        status_shipment = DataGridView1(29, i).Value
        loc = Replace(DataGridView1(30, i).Value, "'", "''")
        eff = If(IsDBNull(DataGridView1(31, i).Value), "", DataGridView1(31, i).Value)
        tracking = If(IsDBNull(DataGridView1(32, i).Value), "", DataGridView1(32, i).Value)
        tracking_usps = Replace(DataGridView1(33, i).Value, "'", "''")
        Cmd.CommandText = String.Format("INSERT INTO re_orders_con_pesos(re_lybro_id, re_order_id, re_order_item_id, re_payments_date, re_quantity, re_payments_transaction_id, re_product_id,
                            re_description, re_peso, re_listing_id, re_sku, re_order_price, re_shipping_price, re_quantity_purchased, re_total_price, re_purchase_date, re_batch_id, re_buyer_email,
                            re_buyer_name, re_recipient_name, re_ship_address_1, re_ship_address_2, re_ship_city, re_ship_state, re_ship_zip, re_ship_country, re_special_comments, re_upc, re_etc, re_status_shipment,
                            re_location, re_eff, re_tracking, re_tracking_usps, re_status_email, re_status_db) VALUES('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}',
                            '{21}','{22}','{23}','{24}','{25}','{26}','{27}','{28}','{29}','{30}','{31}','{32}', '{33}','{34}','{35}')", lybro_id, order_id, order_item_id, payments_date, quantity, payments_transaction_id,
                                        product_id, description, peso, listing_id, sku, order_price, shipping_price, quantity_purchased, total_price, purchase_date, batch_id, buyer_email,
                                        buyer_name, recipient_name, address_1, address_2, city, state, zip, country, special_comments, upc, etc, status_shipment, loc, eff, tracking, tracking_usps,
                                        ESTATUS_EMAIL_NUEVO, ESTATUS_DB_NUEVO)
        Cmd.Execute()
netx:
    Next
    pleasewait.Close()
    Beep()
End Sub
 
    