WF 4.0中的自定义活动:WorkflowItemsPresenter不会显示已转换的数组

时间:2010-02-23 11:29:05

标签: c# binding workflow-foundation-4 workflow-foundation

我们有一个通过Binded Converter转换的数组:

else if (TTools.IsOfBaseClass(value.GetType(), typeof(System.Activities.Presentation.Model.ModelItemCollection)))
        {

              OurBaseClass[] test = (value as ModelItemCollection).GetCurrentValue() as OurBaseClass[];
              List<OurBaseClass> listOfArray = new List<OurBaseClass>();
              foreach (OurBaseClass item in test)
                {
                     listOfArray.Add(item);
                }
                return listOfArray;

        }

转换运行良好,但它没有显示在我们的动态gui

中 带绑定的gui代码:

<sap:WorkflowItemsPresenter xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:sap="clr-namespace:System.Activities.Presentation;assembly=System.Activities.Presentation"  Grid.Column="0" Name="MyArray" Items="{Binding Path=ModelItem.MyArray}"  MinWidth="150" Margin="0">
                <sap:WorkflowItemsPresenter.SpacerTemplate >
                    <DataTemplate>
                        <TextBlock  Foreground="DarkGray" Margin="30">..</TextBlock>
                    </DataTemplate>
                </sap:WorkflowItemsPresenter.SpacerTemplate>
                <sap:WorkflowItemsPresenter.ItemsPanel>
                    <ItemsPanelTemplate>
                        <StackPanel Orientation="Vertical" HorizontalAlignment="Center" Margin="0"/>
                    </ItemsPanelTemplate>
                </sap:WorkflowItemsPresenter.ItemsPanel>
            </sap:WorkflowItemsPresenter>

为什么gui没有显示为List?没有转换器,它运行良好。 感谢

1 个答案:

答案 0 :(得分:0)

您是否尝试在转换器中设置断点?

我认为第一个问题可能是ModelItem.MyArray是ModelProperty类型,而不是ModelItemCollection。