---
title: "Läsa in sparade inställinga till treeView"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/91921-läsa-in-sparade-inställinga-till-treeview"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "saw"
published: "2003-12-04T22:16:13.000Z"
updated: "2003-12-09T20:01:25.000Z"
replies: 8
views: 603
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/91921-läsa-in-sparade-inställinga-till-treeview"
---

# Läsa in sparade inställinga till treeView

## #1 — saw, 2003-12-04T22:16Z

Jag försöker att läsa in inställningarna ifrån registret för att applicera dem på treeView

```
RegistryKey pRegKey = Registry.LocalMachine;
				
pRegKey = pRegKey.OpenSubKey("Software\\IdrottsPortalen");

Object val = pRegKey.GetValue("Län"); 
                    if(val !=null) 
                    { 
                        
treeView1.SelectedNode.Parent.Index = Convert.ToInt32(val); 
                        
val = pRegKey.GetValue("Kommun"); 
                        
val=Convert.ToInt32(val); 
                        
treeView1.SelectedNode.Index =   Convert.ToInt32(val);                        
                    }
```

Error:

```
E:\IdrottsPortalen\IdrottsPortalen\Län_Kommun.cs(252): 

Property or indexer 'System.Windows.Forms.TreeNode.Index'
 cannot be assigned to -- it is read only
```

Jag har krabbat och sökt överallt men inte hittat något svar. :q

Permalänk: https://www.webforum.nu/p/91921

## #2 — juventus1, 2003-12-05T08:37Z

Du får inte tilldela treeView1.SelectedNode.Index något eftersom den endast får läsas, precis som felmeddelandet säger.  Det verkar som om du vill att den nod med ens egen stad skall bli markerad. Kolla den här tråden så borde du få en ledtråd: <http://www.webforum.nu/showthread.php?s=&threadid=89916&goto=nextnewest&forumid=29>

Permalänk: https://www.webforum.nu/p/1220809

## #3 — saw, 2003-12-05T08:43Z

Hej men någonting är galet, för jag kommer inte till den avsedda platsen

Permalänk: https://www.webforum.nu/p/1220812

## #4 — juventus1, 2003-12-05T10:57Z

Hmm, här kommer den igen (det är den föregående tråden!): <http://www.webforum.nu/showthread.php?s=&threadid=89841&forumid=29>

Permalänk: https://www.webforum.nu/p/1220920

## #5 — saw, 2003-12-05T13:16Z

Tack juventus1 men jag förstår inte hur jag skall använda mig av den.
Jag skall ju inte skapa någon ny node, jag ville ju expandera noden.

Permalänk: https://www.webforum.nu/p/1221000

## #6 — niko, 2003-12-05T15:56Z

Gissar hejvilt eftersom jag egentligen inte förstår vad du vill göra:

```
// ..
treeView1.Nodes[Convert.ToInt32(val)].ExpandAll();
val = pRegKey.GetValue("Kommun"); 
treeView1.SelectedNode = treeView1.Nodes[Convert.ToInt32(val)];
// ..
```

??

Permalänk: https://www.webforum.nu/p/1221110

## #7 — saw, 2003-12-05T17:42Z

Hej niko.
Vi tar det väll ifrån början, Jag har mixrat så mycket med det här nu så risken finns tt jag har blandat bort mina koder.
Jag har på min form en treeView som visar län. Som undernode så visar den de kommuner som finns i alla län.
Vad jag ville är att treeView skall markera den posten som jag var inne på sist när jag startar programmet igen.
Jag sparar till registret så här:

```
RegistryKey key = Registry.LocalMachine.OpenSubKey("Software", true);				
				
RegistryKey newkey = key.CreateSubKey("IdrottsPortalen");
				
				
newkey.SetValue("Län", ParentNode);
				
newkey.SetValue("Kommun", ChildNode);
```

Sen läser jag in så här:

```
RegistryKey pRegKey = Registry.LocalMachine;
pRegKey = pRegKey.OpenSubKey("Software\\IdrottsPortalen");
Object lan=pRegKey.GetValue("Län");//.ToString();			
for(int i=0;i<treeView1.Nodes.Count;i++)
{ 		
if(treeView1.Nodes[i].Text==lan.ToString()) 
{ 	
this.treeView1.Nodes[i].Expand(); 
treeView1.Nodes[Convert.ToInt32(val)].ExpandAll();
val = pRegKey.GetValue("Kommun"); 
treeView1.SelectedNode = treeView1.Nodes[Convert.ToInt32(val)];		
} 	
}
```

Jag får inga felmedelanden, men treeView "rör" sig inte.
Går inte detta att ordna?

Permalänk: https://www.webforum.nu/p/1221176

## #8 — niko, 2003-12-05T18:21Z

Sparar du strängar i registret nu? Om du sparar indextalen istället så borde det inte bli konstigare än så här:

```
treeView1.Nodes[lanIndex].Expand();
treeView1.SelectedNode=treeView1.Nodes[lanIndex].Nodes[kommunIndex];
treeView1.Focus();
```

Om *lanIndex* och *kommunIndex* är talen du hämtat från registret och länsnoderna är toppnoder. Om dom i sin tur har noder ovanför sig så blir det så klart annorlunda.

Permalänk: https://www.webforum.nu/p/1221192

## #9 — saw, 2003-12-09T20:01Z

Det ser ut så här nu:

```
RegistryKey pRegKey = Registry.LocalMachine;	
pRegKey = pRegKey.OpenSubKey("Software\\IdrottsPortalen");
Object spara = pRegKey.GetValue("Spara Inställningar");
if(spara !=null)		
{			
if(spara.ToString()=="Ja")		
{
Object indexLan = pRegKey.GetValue("Län");
if(indexLan !=null)
{
Object indexKommun = pRegKey.GetValue("Kommun"); treeView1.Nodes[indexLan].Expand();
treeView1.SelectedNode=treeView1.Nodes[indexLan].Nodes[indexKommun];treeView1.Focus();
```

Felmedelande:

```
E:\IdrottsPortalen\IdrottsPortalen\Län_Kommun.cs(275): 
The best overloaded method match
 for 'System.Windows.Forms.TreeNodeCollection.this[int]' has
 some invalid arguments

E:\IdrottsPortalen\IdrottsPortalen\Län_Kommun.cs(275):
 Argument '1': cannot convert from 'object' to 'int'
```

Några bra förslag?
PS
När jag först testade din kod, så skrev jag in siffror direkt, och det fungerade kanbra, fyra gånger sen ville den inte längre.
 :q
\[REDIGERAT\]
Jag använde mig av Convert.ToInt32(indexLan)\].Expand();
ock fick följande fel

```
An unhandled exception of 
type 'System.ComponentModel.Win32Exception' occurred in 
system.windows.forms.dll

Additional information: Det gick inte att skapa fönsterreferensen.
```

Detta fel uppkommer i mitt MDI-formulär.
Hur kommer jag förbi det?

Permalänk: https://www.webforum.nu/p/1223155

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/91921-läsa-in-sparade-inställinga-till-treeview
