Get Control label in SubVI

Greetz All,
Is it possible to get the label of a control that is connected to a subvi from within the subvi without creating a control reference and connecting it to the subvi?
I'm trying to make some new general use subVIs, so I don't want to get a reference to the calling VI and get refs to all its controls and search for the label because what it would search for will change from application to application, so I would have a string input for the label to search for anyway.
Thanks
Ed
Ed Dickens - Certified LabVIEW Architect - DISTek Integration, Inc. - NI Certified Alliance Partner
Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.

I realized the "wire=control" issue late yesterday. And even though I figured out how to get the control name using a variant input ternimal, then use either 'Get Variant Attribute' or convert to XML and parse out the label, there's a good chance the label will not be there anymore for one reason or another, or that there never was one because the wire didn't come from a control.
So I've reverted back to just using a serarate string input to get the needed string into the subVI.
Thanks
Ed
Ed Dickens - Certified LabVIEW Architect - DISTek Integration, Inc. - NI Certified Alliance Partner
Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.

Similar Messages

  • How do I get the Label for a Front Panel Control to appear in the Block Diagram but not on the Front Panel?

    How do I get the Label for a Front Panel Control to appear in the Block Diagram but not on the Front Panel? On the Front Panel I am making a complex control that consists of a Slider and a Numerical Input box. Both Controls display the same information and either can be used for Input. When one changs, the other is made to display the same value.
     But I only want the Slider to display the Label on the Front Panel, to avoid confusion. On the Block Diagram however, I want both controls to display their Labels so that I know what they are. How do I display the Label for a Control on the Block diagram, but not display its Label on the Front Panel?

    No.  The Label Visible property is separate for the front panel control label and the block diagram terminal label.
    How did you start out with the block diagram's label not being visible?  Whenever I drop a control or indicator, the label is always visible on both the FP and BD by default.  Maybe there is a LabVIEW option that causes new controls/indicators not to have their labels visible by default, but I have yet to find it.  I don't think an item should ever be dropped without the label visible, good LabVIEW coding practice demands that the labels for control terminals on the block diagram be visible so that you know what control or indicator a wire is going to.
    That being said, I have seen a lot of VI's posted where the label for the terminal on the BD is not shown (against good programming practice.)  I've gone to the BD and right clicked to show the label.  Sometimes, the people have an empty label (which will turn off the visibility for both the FP and BD) and I'm forced to add some text of my own into the label so I can figure out what their code is doing.  When I add some text to the label, at that time, I find both the BD and FP labels become visible.
    Are you dealing with controls that have empty labels to start?
    Good programming practices:
    1.  Always have a name for all of your controls, never use and empty label by deleting the text in the label.
    2.  Make the labels unique.  For example, don't have two controls both called Stop.  How do you know quickly know which terminal relates to which control?
    3.  Always show the labels on the block diagram, so you know the function of a control's terminal.  If you want to hide the label on the FP, that's okay.
    4.  If you want a different label to appear on the FP than whatever you actually called the control, then use the caption.  You can hide the label and show the caption.  This is useful if you need to programmatically change what the "label" is on the front panel such if you are making an application that needs to change its user interface such as for a foreign language.

  • When I place a 'write to measuremen​t file' express I get an 'Error in prop page constructi​on: Control Label: Streaming' Using Labview 8 on XP. Any ideas?

    When I place express 'write to measurement file'  I get an error
     'Error in prop page construction:
    Control Label: Streaming
    Couldn't find control/constant on the instance.'
    Help!!!!!
    Please.
    Regards
    Derek

    The error happens as soon as I place the symbol.  The symbol is there and the properties are all accessible, but will not run.
     I enclose word doc with error messages on.
    Many thanks in anticipation
    Derek
    Attachments:
    LabviewA.doc ‏86 KB

  • Is it better to use Invoke nodes or property nodes to set/get control values?

    I have a series of VI's that run in parallel, each to manage different functions- pumping, sensing, a fluid flow model, an experiment generator/runner.
    These need to exchange data, which I am currently doing using invoke nodes (that are all in subVIs), using methods "Set control value" and "Get control value". I find that every now and then (perhaps 1% of the time) the data isn't exchanged correctly and therefore the system doesn't work. I can imagine how "set" could go wrong if they happen simultaneously, and can devise ways of preventing this. However, the "Get" method suffers from the same problem. This is a major problem, because I want to leave it running for several hours.
    I could in
    principle achieve the same thing using property nodes and find myself wondering if this might be more reliable. But I don't want to change over only to find it makes no difference!
    Can anyone advise?

    You can use some kind of syncronization such as queues, occurances, or notifiers but I think the easiest way would be to create and action engine. This was only one action can execute at a time avoiding a "race condition". Possibly a write action and a read action might help. You also can add queues or notifiers into this concept. hope this helps.
    BJD1613
    Lead Test Tools Development Engineer
    Philips Respironics
    Certified LV Architect / Instructor

  • Duplicate control label preventing creation of unit test using UTF

    Hello Everyone,
                       I was trying to create a unit test for a VI using the unit test framework (evaluation version) to try out this tool.  I have two questions regarding that.
    1. Several sub-VIs are called by this VI. I wanted to create a unit test for each of these sub-VIs so that I could test each of them separately. But UTF provided me with the option to create a unit test for the main VI alone. The main VI is huge and getting 100% code coverage is going to be a challenging task. Is there a way by which I can create unit tests for the individual sub-VIs?
    2. When I tried to create the unit test for the main VI, I got an error saying: Cannot create a test from this VI. Contains the following duplicate control labels. This is because the same indicators are being used in different cases within a case structure.
    Is there anyway to resolve this issue?
    Thanks

    If I understand what the problem is you have to controls or indicators that have the same name. To fix this you need to give them unique names. If they need to say the same thing on the user interface then you can use the caption and change the name on that so they both have the same name.
    Tim
    Johnson Controls
    Holland Michigan

  • WPF UI running in seperate runspace - able to set/get controls via synchronized hash table, but referencing the control via the hash table from within an event handler causes both runspaces to hang.

    I am trying to build a proof of concept where a WPF form is hosted in a seperate runspace and updates are handled from the primary shell/runspace. I have had some success thanks to a great article by Boe Prox, but I am having an issue I wanted to open up
    to see if anyone had a suggestion.
    My goals are as follows:
    1.) Set control properties from the primary runspace (Completed)
    2.) Get control properties from the primary runspace (Completed)
    3.) Respond to WPF form events in the UI runspace from the primary runspace (Kind of broken).
    I have the ability to read/write values to the form, but I am having difficulty with events. Specifically, I can fire and handle events, but the minute I try to reference the $SyncHash from within the event it appears to cause a blocking condition hanging both
    runspaces. As a result, I am unable to update the form based on an event being fired by a control.
    In the example below, the form is loaded and the following steps occur:
    1.) Update-Combobox is called and it populates the combobox with a list of service names and selects the first item.
    2.) update-textbox is called and sets the Text property of the textbox.
    3.) The Text value of the textbox is read by the function read-textbox and output using write-host.
    4.) An event handle is registered for the SelectionChanged event for the combobox to call the update-textbox function used earlier.
    5.) If you change the selection on the combobox, the shell and UI hangs as soon as $SyncHash is referenced. I suspect this is causing some sort of blocking condition from multiple threads trying to access the synchronized nature of the hash table, but I am
    unsure as to why / how to work around it. If you comment out the line "$SyncHash.TXT_Output.Dispatcher.Invoke("Send",[action]{$SyncHash.TXT_Output.Text = $Value})" within update-textbox the event handler will execute/complete.
    $UI_JobScript =
    try{
    Function New-Form ([XML]$XAML_Form){
    $XML_Node_Reader=(New-Object System.Xml.XmlNodeReader $XAML_Form)
    [Windows.Markup.XamlReader]::Load($XML_Node_Reader)
    try{
    Add-Type –AssemblyName PresentationFramework
    Add-Type –AssemblyName PresentationCore
    Add-Type –AssemblyName WindowsBase
    catch{
    Throw "Unable to load the requisite Windows Presentation Foundation assemblies. Please verify that the .NET Framework 3.5 Service Pack 1 or later is installed on this system."
    $Form = New-Form -XAML_Form $SyncHash.XAML_Form
    $SyncHash.Form = $Form
    $SyncHash.CMB_Services = $SyncHash.Form.FindName("CMB_Services")
    $SyncHash.TXT_Output = $SyncHash.Form.FindName("TXT_Output")
    $SyncHash.Form.ShowDialog() | Out-Null
    $SyncHash.Error = $Error
    catch{
    write-host $_.Exception.Message
    #End UI_JobScript
    #Begin Main
    add-type -AssemblyName WindowsBase
    [XML]$XAML_Form = @"
    <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Window.Resources>
    <DataTemplate x:Key="DTMPL_Name">
    <TextBlock Text="{Binding Path=Name}" />
    </DataTemplate>
    </Window.Resources>
    <DockPanel LastChildFill="True">
    <StackPanel Orientation="Horizontal" DockPanel.Dock="Top">
    <Label Name="LBL_Services" Content="Services:" />
    <ComboBox Name="CMB_Services" ItemTemplate="{StaticResource DTMPL_Name}"/>
    </StackPanel>
    <TextBox Name="TXT_Output"/>
    </DockPanel>
    </Window>
    $SyncHash = [hashtable]::Synchronized(@{})
    $SyncHash.Add("XAML_Form",$XAML_Form)
    $SyncHash.Add("InitialScript", $InitialScript)
    $Normal = [System.Windows.Threading.DispatcherPriority]::Normal
    $UI_Runspace =[RunspaceFactory]::CreateRunspace()
    $UI_Runspace.ApartmentState = [System.Threading.ApartmentState]::STA
    $UI_Runspace.ThreadOptions = [System.Management.Automation.Runspaces.PSThreadOptions]::ReuseThread
    $UI_Runspace.Open()
    $UI_Runspace.SessionStateProxy.SetVariable("SyncHash",$SyncHash)
    $UI_Pipeline = [PowerShell]::Create()
    $UI_Pipeline.Runspace=$UI_Runspace
    $UI_Pipeline.AddScript($UI_JobScript) | out-Null
    $Job = $UI_Pipeline.BeginInvoke()
    $SyncHash.ServiceList = get-service | select name, status | Sort-Object -Property Name
    Function Update-Combobox{
    write-host "`nBegin Update-Combobox [$(get-date)]"
    $SyncHash.CMB_Services.Dispatcher.Invoke($Normal,[action]{$SyncHash.CMB_Services.ItemsSource = $SyncHash.ServiceList})
    $SyncHash.CMB_Services.Dispatcher.Invoke($Normal,[action]{$SyncHash.CMB_Services.SelectedIndex = 0})
    write-host "`End Update-Combobox [$(get-date)]"
    Function Update-Textbox([string]$Value){
    write-host "`nBegin Update-Textbox [$(get-date)]"
    $SyncHash.TXT_Output.Dispatcher.Invoke("Send",[action]{$SyncHash.TXT_Output.Text = $Value})
    write-host "End Update-Textbox [$(get-date)]"
    Function Read-Textbox(){
    write-host "`nBegin Read-Textbox [$(get-date)]"
    $SyncHash.TXT_Output.Dispatcher.Invoke($Normal,[action]{$Global:Return = $SyncHash.TXT_Output.Text})
    $Global:Return
    remove-variable -Name Return -scope Global
    write-host "End Read-Textbox [$(get-date)]"
    #Give the form some time to load in the other runspace
    $MaxWaitCycles = 5
    while (($SyncHash.Form.IsInitialized -eq $Null)-and ($MaxWaitCycles -gt 0)){
    Start-Sleep -Milliseconds 200
    $MaxWaitCycles--
    Update-ComboBox
    Update-Textbox -Value $("Initial Load: $(get-date)")
    Write-Host "Value Read From Textbox: $(Read-TextBox)"
    Register-ObjectEvent -InputObject $SyncHash.CMB_Services -EventName SelectionChanged -SourceIdentifier "CMB_Services.SelectionChanged" -action {Update-Textbox -Value $("From Selection Changed Event: $(get-date)")}

    Thanks again for the responses. This may not be possible, but I thought I would throw it out there. I appreciate your help in looking into this.
    To clarify the "Respond to control events in the main runspace"... I'm would like to have an event generated by a form object in the UI runspace (ex: combo box selectionchanged event) trigger a delegate within the main runspace and have that delegate in
    the main runspace update the form in the UI runspace.
    ex:
    1.) User changes selection on combo box generating form event
    2.) Event calls delegate (which I have gotten to work)
    3.) Delegate does some basic processing (works)
    4.) Delegate attempts to update form in UI runspace (hangs)
    As to the delegates / which runspace they are running in. I see the $synchash variable if I run get-var within a delegate, but I do not see the $Form variable so I am assuming that they are in the main runspace. Do you agree with that assumption?

  • Get Control Reference From Connector Pane

    I am trying to get a reference to a control associated with a specific index on the connector pane. I see that there is a method to assign a control to a terminal but not get control from a specific terminal. I know I can list all controls on the connector pane, but this doesn't tell me specifically where they are.
    Edit: I see there are private methods for getting and setting properties which may have this info, but because these are undocumented and they are properties of a VI which is binary, I can't reverse engineer.
    CLA, LabVIEW Versions 2010-2013
    Solved!
    Go to Solution.

    GregFreeman wrote:
    The disconnect I had was that the array of controls that the connector pane property node will return has null refnums for unwired terminals, but there are still references for every terminal on the pane.
    For learning about the terminals on an object, a good tactic is to drop the object on a diagram and select Visible Items > Terminals:
    If you see completely enclosed terminal rects (like in the subVI terminals), then reading the "Terminals[]" property of the object will return all of them, even the null data type ones. So for the subVI, you can see that there are 12 distinct terminal rects, so that's how many terminals the object has. But on the built-in function, there are only 6 enclosed terminal rects. So reading the "Terminals[]" property on the subVI will return 12 items, and reading it on the function will return 6.
    Jacobson wrote:
    Good find on the example VI...
    I wrote it (along with about 400 other VIs in the examples folder), so it was pretty easy to find.
    Darren Nattinger, CLA
    LabVIEW Artisan and Nugget Penman

  • How do you update a sub-vi when its control labels are renamed

    I have a sub-vi that has many control inputs to it and I use it many times in the main VI. But I found that I had to go back and rename some of the control labels, but they do not reflect this change in the main VI. And I do not see an option to update them. There are not Under-intensified.

    Labeling of controls/indicators on main vi's and subvi's are independent of each other.  You can name a subvi control C1 and in your main you can create a control labeled M1 and connect the two together.  The labels are independent.  Correct me if I'm wrong but I think what you did is to create the subvi first, then you call it from the main, right click on the subvi input terminal, and select Create - Control.  This will create a control in main and label it the same as the subvi.  Then you opened the subvi and changed the label.  You can't expect that change to show up in main.  Labels are not linked that way.  What is important is that the values are passed correctly, and it is unimportant what they are labeled.  If you want consistency in labeling, you would have to manually change the labels in the main to match any changes made in the subvi.  There is no automatic way to do it except to delete and create again as you mentioned.  The best thing to do is to make the labels in a subvi as generic as possible.  The labels in the main vi can then resemble their function, but does not have to match exactly.  For example, my subvi has an array input called "State Buffer".  My main passes an array into the subvi, and is called State Buf 1 in main.  Later on in main, I may call the subvi again with a separate input called State Buf 2.  Labels need not match, but it is apparent from my labelling that I am passing in a buffer of data of some sort.
    - tbob
    Inventor of the WORM Global

  • Good morning a few weeks ago  I send the request for the replacement program of my ipod nano 1st generation and they sent me the shipping box but I did not get the label to go back,  and I can not  return it , i need to you sent me again the box for retu

    Good morning a few weeks ago  I send the request for the replacement program of my ipod nano 1st generation and they sent me the shipping box but I did not get the label to go back,  and I can not  return it , i need to you sent me again the box for return the ipod

    Best thing would be to call Apple up again, and let them what has happened and they'll help you!

  • How to get control of the scrollbar of the JComboBox

    I am using an editable JComboBox, an editable JComboBox is composed of two components, one is JTextField, the other one is a dropdown list. When I select the text in the JTextfield and delete it , I hope to set the scrollbar to the top so that when I open the dropdown list after that, the user will see the first several items of the list. How to do that? Is there any way to get control of the scrollbar?

    Use the UIApplication networkActivityIndicatorVisible property.

  • How to get the label on selectOneMenu selected item??

    Hi,
    I'm not able to get the label of the selected item in a selectOneMenu. The code I use to fill it is:
    <h:form id="formNacion" name="formNacion">
    <h:selectOneMenu value="#{modelRtbBean.nacion}" id="selectNacion" onchange="this.form.submit();">
    <f:selectItems value="#{dataRecoveryBean.naciones}" id="idItemsNacion"/>
    </h:selectOneMenu>
    </h:form>
    The dataRecoveryBean has this method to fill the content of the component (basically it creates an arrayList of selectItems by recovering data from a database):
    public ArrayList<SelectItem> getNaciones() {
    if ((naciones == null ) || (naciones.isEmpty()) ){
    naciones = new ArrayList<SelectItem>();
    HDBGeografico hdbGeo = new HDBGeografico();
    SqlMadd sqlmadd = new SqlMadd();
    try {
    AccessBD sscm = new AccessBD( );
    sscm.table(hdbGeo.getSqlNaci());
    // The AccessBD object has a reference to the resultset:
    ResultSet rs = sscm.getRS();
    while (rs.next()) {
    naciones.add(new SelectItem((String) rs.getString(1), (String) rs.getString(2)));
    sscm.Close();
    } catch (Exception e) {
    System.out.println(e.toString());
    return naciones;
    the modelRtbBean setNacion recovers the value, but I need its label too, because it's a kind of description that I use later.
    In the modelRtbBean setNacion method I'm able to access the UISelectItems object, but I cannot get the selected item itself
    public void setNacion(String nacion) {
    FacesContext fc = FacesContext.getCurrentInstance();
    if (fc != null) {
    UIViewRoot viewRoot= fc.getViewRoot();
    System.out.println(viewRoot.getViewId());
    HtmlSelectOneMenu selNac = (HtmlSelectOneMenu)viewRoot.findComponent("bodySTB:formNacion:selectNacion");
    if (selNac != null) {
    System.out.println("Nacion value-htmlSelectOneMenu :" + selNac.getValue() );
    System.out.println(selNac.getAccesskey() + selNac.getTitle() + selNac.toString());
    UISelectItems uis = (UISelectItems)selNac.findComponent("idItemsNacion");
    if (uis != null) {
    System.out.println("I have the element...");
    this.nacion = nacion;
    How could it be accessed this selected item label ??

    I finally did it as you suggest, but I found another way to access the label (I don't know if it could be useful for anybody but here it is) :
    In the setter method linked to the SelectOneMenu, you can put in this code:
    FacesContext fc = FacesContext.getCurrentInstance();
    if (fc != null) {
    UIViewRoot viewRoot= fc.getViewRoot();
    System.out.println(viewRoot.getViewId());
    HtmlSelectOneMenu sel = (HtmlSelectOneMenu)viewRoot.findComponent("viewName:formName:selectOneName");
    if (sel != null) {
    UISelectItems uis = (UISelectItems)sel.findComponent("idItemsName");
    if (uis != null) {
    ArrayList<SelectItem> listElem = (ArrayList<SelectItem>) uis.getValue();
    You could put in in the value item of each SelectItem it's index position in the list, so in the setter method
    of the bean linked to the selectOneMenu you would get the index of the selected item as the parameter of the method
    int index = 1; // For easyness in this example
    System.out.println("Label: " + listElem.get(index).getLabel() + " Value: "+ listElem.get(index).getValue());
    Thanks !!!

  • How to get field label in downloaded file

    Hi,
    How to get filed labels, when we download a report to an Excel sheet?
    Thank U

    HI,
      Hoping that you are using the 'GUI_Download'  FM to download. Then you the
      following code
    TYPES : BEGIN OF type_xlhead,
              colname TYPE char50,
            END OF type_xlhead.
    data: type_t_xlhead     TYPE STANDARD TABLE OF type_xlhead,
         CALL FUNCTION 'GUI_DOWNLOAD'
          EXPORTING
            filename                = v_file
            filetype                = c_asc
            write_field_separator   = c_x
          TABLES
            data_tab                = rt_rec_result
            fieldnames              = type_t_xlhead
          EXCEPTIONS
            file_write_error        = 1
            no_batch                = 2
            gui_refuse_filetransfer = 3
            invalid_type            = 4
            no_authority            = 5
            unknown_error           = 6
            header_not_allowed      = 7
            separator_not_allowed   = 8
            filesize_not_allowed    = 9
            header_too_long         = 10
            dp_error_create         = 11
            dp_error_send           = 12
            dp_error_write          = 13
            unknown_dp_error        = 14
            access_denied           = 15
            dp_out_of_memory        = 16
            disk_full               = 17
            dp_timeout              = 18
            file_not_found          = 19
            dataprovider_exception  = 20
    In the table rt_xlhead pass the name of fields.
    DATA : s_xlhead TYPE type_xlhead.
      CLEAR s_xlhead.
      REFRESH  type_t_xlhead .
      s_xlhead-colname = 'Company Code'(116).
      APPEND s_xlhead TO  type_t_xlhead .
      CLEAR s_xlhead.
      s_xlhead-colname = 'Main Asset Number'(117).
      APPEND s_xlhead TO  type_t_xlhead
      CLEAR s_xlhead.
      s_xlhead-colname = 'Sub Number'(118).
      APPEND s_xlhead TO  type_t_xlhead
      CLEAR s_xlhead.
    Rewards points if useful

  • How to get control on each row in advance table

    hi, i have a advanced table with some data, in each row i have two radio buttons which i need to set depending on some column value in the row, i tried by following code
    for(SoftCompVORowImpl row2 = (SoftCompVORowImpl)svo.first();row2!=null;row2=(SoftCompVORowImpl)svo.next())
    if(row2.getAttribute("CommitEndDate")==null || row2.getAttribute("CommitEndDate").equals(""))
    onetime.setSelected(true);
    recurring.setSelected(false);
    else
    onetime.setSelected(false);
    recurring.setSelected(true);
    but this code is making set only one radio button (onetime), which ever i am making first true its getting selected, i need to know how to get control of each row....

    Babu,
    Basically you should use the decode function in your sql query itself and attach it with BC4J properties of radio buttons.In that case you don't have to worry about setting them declaratively !
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Get Control on a Procedure when a process crashes

    Dear Experts,
    I've got a C++ application calling a PL/SQL procedure.My application crashes.
    I'm logged under TOAD and want to modify my procedure but I can get control on it.
    Is it my application which "locked"(?)(sorry for the uncorrect language) the access to the procedure ?
    How should I proceed with TOAD to be able to modify my procedure after this crash ?
    Any help greatly appreciated.
    Regards,
    Jerome.

    If your client crashes, the procedure on the DB server may still be doing its job. Ask one of the DBAs (or yourself) to terminate the session initiated by your application.

  • Can we get the label name of the particular oracle field using open script

    hi
    can we get the label name of the oracle fields like column name ORDER NUMBER instead of ORDER_ORDER_NUMBER_0 when recording using openscript.

    Good morning
    Do you develop functional or load test scripts?
    I don't think we can in both cases because this is really the name of the field + the index.
    The zero refers to first line normally (then 1 for second line and so on).
    "Order number" is maybe the display label which is not enough to recognize and interact with a field.
    May I ask why you want this, then it could help me (us) to give you a good solution/workaround.
    Cheers
    JB

Maybe you are looking for

  • Apple TV Delay

    Hey.. When i turn on my Apple TV and then switch the input on my TV from TV to HDMI, it says no signal and nothing happens. Only when i try to use the control and switch back to TV and then back to HDMI it suddenly works. It's like there is a kind of

  • Xserve G4 Dual 1.3GHz PCI Options?

    I just picked up a Dual 1.3GHz G4 Xserve. I was wondering what my PCI options are. I was looking for what exact video cards work. So far I have only came up with the ATI8500 I believe. Is there any SATA cards that work to add external storage? Any in

  • Problem transferring folder info to hard drives.

    I have three Lacie Porche drives 250 Gb. I am having trouble transfering data back and forth between them and my g5 tower. I keep gettng "The Finder cannot complete the operation because some data in "dsc0937.jpg" could not be written. (Error code -3

  • XML creation in AS2

    Hello everyone, Im trying to create a text node within a child node: user_xml.firstChild.appendChild( user_xml.createTextNode("<![CDATA[------]]>") ); but when I trace this I get: user_xml = <UserDetails><![CDATA[------]]></UserDetails> Which is not

  • Spry Tabbed Font Colours

    With a Spry Tabbed Panel: How can you make the selected panel have a different font colour to all the non-selected tabs? To be clear, it's not the content itself I am talking about, but the heading on the tabbed panel.