ACC2000: Error "Invalid key" When Adding Node to TreeView ControlID: Q207849
|
Advanced: Requires expert coding, interoperability, and multiuser skills.
When you try to use the Add method of the Node object with the TreeView control, you may receive the following error message:
NOTE: The TreeView control is only available if you have installed the Microsoft Office 2000 Developer software package.Run-time error '35603':
Invalid key
The Item Method, which can be used to return a specific member of the Nodes collection, takes one argument. If this argument is a numeric expression, the Item method searches for the node by index; if the argument is a string expression, the Item method searches for the node by key. Because this argument is a Variant, the Item method cannot distinguish a key expression from an index expression, unless that expression contains at least one non-numeric character.
Concatenate at least one non-numeric character to the expression in the key argument of the Add method. For example, add a node by using
Set Node = Me!CustOrders.Nodes.Add(, , "Node " & rst!OrderID, _
CStr(rst!OrderID))
instead of
Set Node = Me!CustOrders.Nodes.Add(, , rst!OrderID, CStr(rst!OrderID))
The sample code in this article uses Microsoft Data Access
Objects. For this code to run properly, you need to reference
the Microsoft DAO 3.6 Object Library.
Private Sub Form_Load()
Dim db As DAO.DATABASE
Dim rst As DAO.Recordset
Dim Node As Object
Set db = CurrentDb()
Set rst = db.OpenRecordset("Orders", dbOpenDynaset)
If rst.RecordCount > 0 Then
Do Until rst.EOF
Set Node = Me!CustOrders.Nodes.Add(, , _
rst!OrderID,cstr(rst!OrderID))
rst.MoveNext
Loop
End If
rst.Close
db.Close
End Sub
The error occurs even if you use the CStr() function with the key argument (the third argument of the Add method).Run-time error '35603':
Invalid key
For more information about the Add method of the Node object, click Microsoft Visual Basic Help on the
Help menu, type "Add Method (Nodes Collection)" in the Office Assistant or the Answer Wizard,
and then click Search to view the topics returned.
For more information about the Item method, click Microsoft Visual Basic Help on the
Help menu, type "Item method" in the Office Assistant or the Answer Wizard,
and then click Search to view the topics returned.
Additional query words:
Keywords : kbcode kberrmsg
Version : WINDOWS:2000; :
Platform : WINDOWS
Issue type : kbprb
Last Reviewed: May 13, 1999