Dim oDoc As PartDocument = ThisDoc.Document Dim oDef As PartComponentDefinition = oDoc.ComponentDefinition Dim AppearanceLibraryName As String = "Inventor Material Library" ' Get the appearance library Dim AppLib As AssetLibrary = Nothing Try AppLib = ThisApplication.AssetLibraries.Item(AppearanceLibraryName) Catch MsgBox("Couldn't find a appearance library called '" & AppearanceLibraryName,, "Cadline iLogic") Exit Sub End Try Dim AppColours As AssetsEnumerator = AppLib.AppearanceAssets Dim ColourArray As New ArrayList ' Write all the appearance names to an arraylist For Each A As Asset In AppColours ColourArray.Add(A.DisplayName) Next ' Sort the array alphabetically ColourArray.Sort() ' Create 3 parameters with the list of appearances in...... ' Parameter 1 Try MultiValue.List("Appearances1") = ColourArray Catch ' parameter doesn't exist - create it Dim oParam As Parameter = oDef.Parameters.UserParameters.AddByValue("Appearances1", ColourArray(0), UnitsTypeEnum.kTextUnits) MultiValue.List("Appearances1") = ColourArray End Try ' Parameter 2 Try MultiValue.List("Appearances2") = ColourArray Catch ' parameter doesn't exist - create it Dim oParam As Parameter = oDef.Parameters.UserParameters.AddByValue("Appearances2", ColourArray(0), UnitsTypeEnum.kTextUnits) MultiValue.List("Appearances2") = ColourArray End Try ' Parameter 3 Try MultiValue.List("Appearances3") = ColourArray Catch ' parameter doesn't exist - create it Dim oParam As Parameter = oDef.Parameters.UserParameters.AddByValue("Appearances3", ColourArray(0), UnitsTypeEnum.kTextUnits) MultiValue.List("Appearances3") = ColourArray End Try