LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
manu.NET

Property grid to view / edit clusters in a treeView ....

Status: New

It would be nice to add a new control/indicator in Labview, which could view and edit the content of a cluster ( recursivly ) in a tree view.

 

The viewer could looks like the Microsoft Dotnet Property grid.

 

propertyGrid.PNG

Manu.net
6 Comments
Knight of NI
I'm not sure I understand the premise of this. What do you consider to be the limiting factor in viewing/editing clusters on the front panel? Can you provide an example where your property window would be superior to the "normal" way?
manu.NET
Active Participant

Here is my own example of dynamic property grid ...

 

I had to view the content of a hierarchical cluster to the end user of my application ... In a limited place.

My other problem was, that i wanted to view all kind of cluster or datatype in my viewer dynamicaly.

 

So i build a XControl which could view evry kind of clusters ... dynamicaly. The datatype of the XControl is a refernce.

 

To do this i analyse the content of the cluster using references recursively. 

I have only one problem with the arrays references ( Which i don't support)

(I can't get the reference of a single array element)

 

One of my collegue has build something like my XControl using variants. (He supports arrays)

 

I can solve  the problem by myself... but i think this could be usefull for others too ...

And my XControl is developped directly in Labview ...

A control directly integrated in Labview, developped with the inner layer of Labview, should be more powerfull !

 

Here is a view of my cluster viewer : I don't had the time to build the editing side.

 

viewCluster.PNG

 

My Xcontrol is only a viewer ... It should be nice to had the same kind of viewer and the ability of editing field by field ... with an apropriate editor ! ( Checkbox for boolean, Enum's, ... )

 

I have already use the dotnet propertygrid ... in a previous life ... And it was a powerfull tool to create rapidly profesionnal applications.

The dotNet propertyGrid could also be customized to add custom editors, custom contraints checks (When values are dependant)

 

I hope i have answer your question.

Manu.net
Sil3nc3r
Member

I Just would like to express better my collegue needs by showing one example of a LV application I develloped.

I don't use References but i use Variant Datas to explore complex cluster and arrays to represent them in a treeview.

 

Data browser I/O

 Input = Variant

Output = Variant with modified Values

 

 

 

 

 

 

 

 

 

 

 Complex Cluster to explore

Data to explore 

 

 View i obtain

Data browser Treeview 

 

I added some dynamic windows data type drive to edit the cluster thanks to the treeview.

Dynamic type drive popup 

 

 A dynamic popup appear when you click on value to edit a new one (for example a DAQmx Channel here)

 

Of course it'll be usefull if LV provide this kind of tools to edit complex clusters and put this features in user interface like an XControl.

Message Edité par Sil3nc3r le 02-11-2010 06:58 AM
PierreCottin
Member

I would like to push a bit further this idea. This PropertyGrid control could be used the same way with an object. That's what .NET people do. In your class definition you give some attributes to the properties your want to acces and then you just need to wire your object to the control to acces its properties. It's completely generic, transparent and portable. No user interface to adjust. I have an application where I use generic plugin modules. Instead of programming the gui of each module, I would have been very interested in having such a control.

 

Pierre C.

manu.NET
Active Participant

Hello  PierreCottin,

 

Your right ... the DotNet propertygrid is the good basis to create such a feature.

 

Manu.net

Manu.net
probably
Member

I came across this by accident when looking for a different solution, good work Google!

 

I'd love to have the above control provided by NI. I would use it immediately to directly edit hierarchical datasets in a MySQL database.

 

The datatypes in the recordset normally contain Booleans, text, numberic, timestamps and the like. There is currently no way to mix the datatypes in a TreeView control and update the database accordingly. The only way I have seen is the solution above, which spoofs the datatypes using dynamic pop up windows. But what a lot of effort to get to something that should be obvious for

 

1. Complex cluster navigation

2. Oject property browsing

3. Database interrogation and updating (arguably the same as 2 above, where the object is a recordset, table, etc.)

 

On a related subject, how about databound controls like VB? That would make it even better.

 

Compliments to the previous posters