Поделиться через


IDesignerGlyphProvider Интерфейс

Определение

Внимание!

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Указывает методы, используемые классами поставщиков глифов для создания массива глифов для отображения в конструкторе операций.

public interface class IDesignerGlyphProvider
public interface IDesignerGlyphProvider
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public interface IDesignerGlyphProvider
type IDesignerGlyphProvider = interface
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type IDesignerGlyphProvider = interface
Public Interface IDesignerGlyphProvider
Атрибуты

Примеры

В следующем примере кода показано, как реализовать интерфейс IDesignerGlyphProvider. В следующем примере кода показана реализация метода GetGlyphs для отрисовки пользовательских объектов глифов в рабочей области конструктора операции.

Этот пример кода является частью образца пакета SDK «Workflow Monitor», взятого из файла DesignerGlyphProvider.cs. Дополнительные сведения см. в разделе Монитор рабочих процессов.

//Custom glyphprovider used to draw the monitor glyphs on the designer surface
internal class WorkflowMonitorDesignerGlyphProvider : IDesignerGlyphProvider
{
    private Dictionary<string, ActivityStatusInfo> activityStatusList;

    internal WorkflowMonitorDesignerGlyphProvider(Dictionary<string, ActivityStatusInfo> activityStatusList)
    {
        this.activityStatusList = activityStatusList;
    }

    ActivityDesignerGlyphCollection IDesignerGlyphProvider.GetGlyphs(ActivityDesigner activityDesigner)
    {
        ActivityDesignerGlyphCollection glyphList = new ActivityDesignerGlyphCollection();

        //Walk all of the activities and use the 'CompletedGlyph' for all activities that are not 'closed'
        foreach (ActivityStatusInfo activityStatus in activityStatusList.Values)
        {
            if (activityStatus.Name == activityDesigner.Activity.QualifiedName)
            {
                if (activityStatus.Status == "Closed")
                    glyphList.Add(new CompletedGlyph());
                else
                    glyphList.Add(new ExecutingGlyph());
            }
        }

        return glyphList;
    }
}
'Custom glyphprovider used to draw the monitor glyphs on the designer surface
Friend Class WorkflowMonitorDesignerGlyphProvider
    Implements IDesignerGlyphProvider

    Dim activityStatusList As Dictionary(Of String, ActivityStatusInfo)

    Friend Sub New(ByVal activityStatusList As Dictionary(Of String, ActivityStatusInfo))
        Me.activityStatusList = activityStatusList
    End Sub
    Public Function GetGlyphs(ByVal activityDesigner As System.Workflow.ComponentModel.Design.ActivityDesigner) As System.Workflow.ComponentModel.Design.ActivityDesignerGlyphCollection Implements System.Workflow.ComponentModel.Design.IDesignerGlyphProvider.GetGlyphs
        Dim glyphList As ActivityDesignerGlyphCollection = New ActivityDesignerGlyphCollection()

        'Walk all of the activities and use the 'CompletedGlyph' for all activities that are not 'closed'
        For Each activityStatus As ActivityStatusInfo In activityStatusList.Values
            If activityStatus.Name = activityDesigner.Activity.Name Then
                If activityStatus.Status = "Closed" Then
                    glyphList.Add(New CompletedGlyph())
                Else
                    glyphList.Add(New ExecutingGlyph())
                End If
            End If
        Next

        Return glyphList
    End Function
End Class

Комментарии

Примечание

В этом материале обсуждаются устаревшие типы и пространства имен. Дополнительные сведения см. в статье о нерекомендуемых типах в Windows Workflow Foundation 4.5.

Этот интерфейс указывает методы, которые классы реализации должны использовать для предоставления соответствующего набора классов DesignerGlyph конструкторам операций. Класс реализации также должен отображать объекты DesignerGlyph в классе ActivityDesigner.

Методы

GetGlyphs(ActivityDesigner)
Устаревшие..

Возвращает массив глифов, связанных с указанным конструктором операций.

Применяется к

См. также раздел