Plex 2E

  • 1.  Panel with ImageList control fails C# build

    Posted Sep 01, 2011 08:45 AM
      |   view attached
    An existing WinC panel being regenerated for C#. The panel inherits from the pattern FrameProperty, and includes an image list and tab strip control.

    The following section is created in the XAML source which causes a build error.

    [font=Courier New]<Style x:Key="_12302" TargetType="Non Applicable" BasedOn="{StaticResource {x:Type Non Applicable}}">
    <Setter Property="Margin" Value="170, 99, 0, 0" />
    <Setter Property="Width" Value="38" />
    <Setter Property="Height" Value="38" />
    <Setter Property="HorizontalAlignment" Value="Left" />
    <Setter Property="VerticalAlignment" Value="Top" />
    <Setter Property="TabIndex" Value="0" />
    </Style>[font]


    Build error reported is:

    [font=Courier New]C:\Desyntime\Development\Gen70\Src\MMDesyntime61\TT3jF_ObPnl.xaml(326,102): error MC3066: The type reference cannot find a public type named 'Non Applicable'. Line 326 Position 102. [C:\Desyntime\Development\Gen70\Src\MMDesyntime70.csproj]
    [font]

    The object of type "Non Applicable" seems to be the image list control (based upon the stated size), the tab strip control is generated as type "ObBeanData".

    Using the panel editor to set the image list control to be "Exist No" allows the function to be built.

    Copy of source xaml attached .

    Attachment(s)

    txt
    TT3jF_ObPnl.xaml.txt   18 KB 1 version


  • 2.  RE: Panel with ImageList control fails C# build

    Posted Sep 01, 2011 09:01 AM
    I have a further example of this behavior. This time the panel inherits from the Treeview pattern, and both the image list and tree control are type "Non Applicable". Example below.

    [font=Courier New]<Style x:Key="_12421" TargetType="Non Applicable" BasedOn="{StaticResource {x:Type Non Applicable}}">
    <Setter Property="Margin" Value="170, 99, 0, 0" />
    <Setter Property="Width" Value="38" />
    <Setter Property="Height" Value="38" />
    <Setter Property="HorizontalAlignment" Value="Left" />
    <Setter Property="VerticalAlignment" Value="Top" />
    <Setter Property="TabIndex" Value="0" />
    </Style>
    <Style x:Key="_12422" TargetType="Non Applicable" BasedOn="{StaticResource {x:Type Non Applicable}}">
    <Setter Property="Margin" Value="8, 36, 416, 44" />
    <Setter Property="MinWidth" Value="264" />
    <Setter Property="MinHeight" Value="252" />
    <Setter Property="HorizontalAlignment" Value="Stretch" />
    <Setter Property="VerticalAlignment" Value="Stretch" />
    <Setter Property="TabIndex" Value="0" />
    [font]
    I know that there are multiple considerations surrounding the porting from ActiveX to native .Net. What guidance can you give me to take this forward, and is there documentation of what is currently supported?

    thanks.


  • 3.  RE: Panel with ImageList control fails C# build

    Posted Sep 01, 2011 03:35 PM
    Hi there Matt,

    Are you sure you extracted from the latest ACTIVE library into your local? The TabStrip, TreeView and ImageList controls should be implemented for .NET. When you generate those resources, you should see the control names ObTabControl, ObTreeView and ObImageList generated as the TargetType's. For example:

    <Style x:Key="_12293" TargetType="ob:ObTabControl" BasedOn="{StaticResource {x:Type ob:ObTabControl}}">
    <Setter Property="Margin" Value="4, 4, 0, 0" />
    <Setter Property="Width" Value="532" />
    <Setter Property="Height" Value="28" />
    <Setter Property="HorizontalAlignment" Value="Left" />
    <Setter Property="VerticalAlignment" Value="Top" />
    <Setter Property="TabIndex" Value="0" />
    </Style>

    If you generate and build the TUTREFERCS.mdl example, you should see the correct target types generated; rather than "Non Applicable".

    We are currently working on the documentation for the ACTIVE library; and we will obviously have to outline which of the pattern functions have C# equivalents and which do not. We may not be implementing some because they are implemented as behaviours against existing controls (e.g. Calendars against Edit fields) or because we have chosen not implemented them as custom controls in the Plex .NET WPF runtime (e.g. SheridanListBar). As a general rule of thumb, we have currently tried to support the same range of controls that we support for Java client; which basically means support for TabStrip and TreeView.

    Let me know if you can't get your TabStrip function working and we can discuss it further,

    -Rob


  • 4.  RE: Panel with ImageList control fails C# build

    Posted Sep 02, 2011 08:10 AM
    I didn't get to this today guys, apologies.
    I will try to check it out asap, might be Tuesday.
    It might be that there are some local panel mods in effect when the version of the ActiveX was upgraded, but I will have a closer look.

    thanks,

    Matt


  • 5.  RE: Panel with ImageList control fails C# build

    Posted Sep 01, 2011 11:36 AM
      |   view attached
    Hi, Matt

    Glad you reach here sooner.

    First of all, have you refreshed pattern lib from 7.0 install libraries?
    If so, probably you made some local changes against properties of those two Controls.
    At least, we support TabStrip and Treeview control with Alpha.

    For ImageList Control, the existance property in Pattern layer set to NO.

    For TabStrip, see atached image.
    Function: UISTYLE/FrameProperty panel
    It has
    "Control Name" property set with "WPFTab1"
    "Event Mappings" property set with "ObActionPerformed=WPFTabEvents"
    "Java Bean Class" property set with "ob:ObTabControl"

    If you have above and 7.0 Pattern AD, your Tab function should works. Although I know dispaying Icon on Tab doesn't work yet.

    The reason you get Type "ObBeanData" is you have ACTIVEX Control but you don't have "Java Bean Class" set.
    I guess you run the function after build success, you see the static Control saying "This control isn't supported".
    So ObBeanData is a kind of dummy class for unsupported Control.

    We cannot support native ACTIVEX or general Control on WPF UI at r7.0, however, I made the way to support Tab or Tree natively.
    The trick, at least, make us provides those control support limmited manner.

    Hope you can run the TabStrip soon.

    Regards,
    Kiyoshi


  • 6.  Function is custom

    Posted Sep 06, 2011 04:13 AM
    This problem is due to the new panel property values missing from the function I am trying to build. The reason is that the function does not inherit from FrameProperty, instead it is a FrameParent with a custom implementation of the tab control. This explains why other "tab" functions in my model don't cause an issue.

    I will add the values described in your posts and see if that does it.

    Time passes.......

    Yes, that works. Conclusions, the Active pattern library changes have been made but developers should be on the lookout for customization which may exist in their own models.


  • 7.  RE: Function is custom

    Posted Sep 06, 2011 03:18 PM
    Matt,

    Thanks for another confirmation.

    My only question for this approach is, Do you accept the modification you needed to make your function works??
    Regards,
    Kiyoshi