Solved

save settings to registry

Posted on 2010-11-12
3
277 Views
Last Modified: 2012-05-10
hello there,
I am using this code so save settings of application to the registry..
I just added a TabControl and now its getting an error while saving the data..
its saying Path not found while saving the TextBox what can I do?
Public Sub Save_Settings(ByVal cont As Control, ByVal strName As String)
        For Each thisControl As Control In cont.Controls
            If TypeOf thisControl Is TextBox Then
                SaveSetting(strName, "Settings", thisControl.Name, DirectCast(thisControl, TextBox).Text)
            ElseIf TypeOf thisControl Is CheckBox Then
                SaveSetting(strName, "Settings", thisControl.Name, DirectCast(thisControl, CheckBox).Checked)
            ElseIf TypeOf thisControl Is ComboBox Then
                SaveSetting(strName, "Settings", thisControl.Name, DirectCast(thisControl, ComboBox).SelectedIndex)
            ElseIf TypeOf thisControl Is AxMSComCtl2.AxFlatScrollBar Then
                SaveSetting(strName, "Settings", thisControl.Name, DirectCast(thisControl, AxMSComCtl2.AxFlatScrollBar).Value)
            ElseIf TypeOf thisControl Is RadioButton Then
                SaveSetting(strName, "Settings", thisControl.Name, DirectCast(thisControl, RadioButton).Checked)
            ElseIf thisControl.HasChildren Then
                Save_Settings(thisControl, cont.Tag) 
            End If
        Next
    End Sub

Open in new window

0
Comment
Question by:XK8ER
  • 2
3 Comments
 
LVL 85

Expert Comment

by:Mike Tomlinson
ID: 34124568
I don't see how this code is causing the error.  Can you post the stack trace?
0
 
LVL 1

Author Comment

by:XK8ER
ID: 34124622
when I get the error It marks this line as yellow

SaveSetting(strName, "Settings", thisControl.Name, DirectCast(thisControl, TextBox).Text)

and says "Argument 'Path' is Nothing or empty."

when I put the mouse over
Public Sub Save_Settings(ByVal cont As Control, ByVal strName As String)

it says cont TabPage = Dogs and strName = Nothing

maybe that nothing is causing the issue? did you tried the code?
0
 
LVL 85

Accepted Solution

by:
Mike Tomlinson earned 500 total points
ID: 34124667
Well...at the bottom of your If structure you have this:

            ElseIf thisControl.HasChildren Then
                Save_Settings(thisControl, cont.Tag)
            End If

You're making a recursive call to Save_Settings() but the second parameter is using the TAG() of the current control.  I'm guessing you have controls that do NOT have anything in the Tag() property and this is causing the error as "strName" is being used as the first parameter to SaveSetting().

You said you added a TabControl.  Did you put something in the Tag() property of each TabPage?
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A while ago, I was working on a Windows Forms application and I needed a special label control with reflection (glass) effect to show some titles in a stylish way. I've always enjoyed working with graphics, but it's never too clever to re-invent …
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

828 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