2015-03-04 4 views
0

Я не могу прочитать все параметры выбранного элемента с помощью vb.net. Мне нужно прочитать все параметры, включая параметры типа. Мой код выглядит следующим образом.Чтение параметров типа семейства Revit

Dim picked As Reference = uiapp.ActiveUIDocument.Selection.PickObject(UI.Selection.ObjectType.Element) 
Dim ele As Element = uiapp.ActiveUIDocument.Document.GetElement(picked.ElementId) 
Dim idasstring As String = picked.ElementId.ToString() 

For Each p As Parameter In ele.Parameters 
    count = count + 1 

    frmFriDB.lstParameter.Items.Add(" Parameter Name : " + p.Definition.Name.ToString() + 
       vbCrLf + " Value: " + vbCrLf + p.AsString() + p.AsValueString()) 
Next 

ответ

0

Вы можете использовать p.AsString(), если параметр является параметром String. Вы можете проверить это с помощью свойства Parameter.StorageType.

Эта страница должна дать вам больше информации: http://help.autodesk.com/view/RVT/2014/ENU/?guid=GUID-D003803E-9FA0-4B2B-AB62-7DCC3A503644

Для извлечения параметров типа, необходимо извлечь элемент, представляющий тип:

Dim typeEle as Element = uiapp.ActiveUIDocument.Document.GetElement(ele.GetTypeId()) 

От там, извлечения параметров из элемента типа так же, как вы извлекли их из элемента.

Я рекомендую потратить некоторое время на чтение справочной документации, прежде чем продолжить дальше.

Последнее замечание, вы можете получить элемент непосредственно из ссылки, так что линия

Dim ele As Element = uiapp.ActiveUIDocument.Document.GetElement(picked.ElementId) 

может быть заменен

Dim ele As Element = uiapp.ActiveUIDocument.Document.GetElement(picked)