2009-09-02 4 views
2

디자인 타임에 WF 4.0의 사용자 지정 작업으로 수행 할 수있는 기능과 제한 사항을 더 잘 이해하고 싶습니다. 보다 구체적으로, 설계 활동에서 세부 사항/활동에 대한 데이터를 지정하기 위해 설계자가 설계자가 사용자 정의 된 방식으로 상호 작용할 수 있도록 사용자 정의 활동에서 수행 할 수있는 작업.디자인 타임에 사용자 지정 활동에 데이터 입력 (WF 4.0)

예를 들어 액티비티 A를 만들고 워크 플로 디자이너가 해당 활동을 디자이너 (Visual Studio 디자이너 또는 별도의 응용 프로그램에서 다시 호스팅 된 디자이너)의 워크 플로에 배치하면 .NET 대화 상자는 사용자가 데이터를 입력 (예 : 파일 열기 대화 상자를 통해 파일 지정)하고 특정 텍스트 상자에 초점을 맞추거나 데이터를 입력 할 때마다 (이벤트 핸들러) 입력 데이터, 즉 일부 코드를 실행하도록 표시 할 수 있습니다.

이 작업을 워크 플로 XAML 파일에 저장하고 저장할 수 있습니까?

워크 플로를 실제로 디자인 할 때 워크 플로 디자이너에서 이러한 모든 기능이 필요합니다.

감사합니다.

답변

1

WF4 디자이너는 상당히 유능합니다. 사용자에게 속성 시트를 사용하지 않고 디자인 화면과 직접 상호 작용할 수있는 컨트롤을 디자이너에 추가 할 수 있습니다. 활동에 유효성을 추가하여 입력 한 데이터가 수용 가능한지 여부를 확인할 수도 있습니다. 이 모든 작업은 워크 플로 수준이 아닌 C# 또는 VB 코드의 활동 수준에서 수행됩니다. 나는 활동이 중단되었을 때 이벤트에 대해 확신하지 못한다. 그러나 그들이 지원된다고 믿는다. (최소한 Wf3에서 적어도 나는 그걸 이월되기를 기대한다.)

1

이 비디오는 사용자 정의 활동을 만드는 방법에 대해 이야기한다.) 디자인 타임에 값을 넣을 수 있도록 ..이 유 도움이되기를 바랍니다 ..

http://bloggersguides.net/media/p/188.aspx 활동이 워크 플로에 추가 할 때 이벤트 알림에 훅 수있는 몇 가지 방법이 있습니다

1

.

첫 번째 것은 WorkflowDesigner 클래스에서 TextChanged 이벤트를 수신하고 있습니다 (B eta1) 또는 나는 더 안정적인 ModelChanged 이벤트 (Beta2)가 될 것이라고 생각합니다. 이는 무언가가 워크 플로에서 변경되었다는 알림입니다. 특별한 것은 아니지만 단지 무언가이지만 이것을 워크 플로를 탐색하고 구성되지 않은 새로운 활동을 찾기위한 방아쇠로 사용할 수 있습니다.

두 번째 가능성은 각 ModelItem (활동의 디자인 타임 래퍼)이 INotifyPropertyChanged를 구현한다는 점을 이용합니다. 전체 워크 플로우의 변경 사항을 듣지 않고, While 활동의 'Body'와 같은 특정 속성의 변경 사항을 수신 할 수 있습니다. 그런 다음 속성이 새 활동을 유지하도록 초기화되면 변경 사항에 응답하십시오.

세 번째 가능성은 관심있는 활동에 사용자 지정 디자이너가있는 것입니다.이 시나리오는 생각하고있는 것과 일치합니다. 여기에서 활동의 모양을 완전히 사용자 정의 할 수 있습니다. 커스텀 디자이너는 실제로 WPF 컨트롤 일뿐입니다. WPF 응용 프로그램을 디자인 할 때 적용되는 것과 동일한 이벤트 및 데이터 바인딩 및 유효성 검사 기술을 사용하거나 일반 WPF 이벤트에 응답 할 수 있습니다. 원하는 경우 확실히 대화 상자를 팝업 할 수 있습니다.

XAML 파일에 저장되는 것과 마찬가지로 사용자 지정 활동은 일반 활동처럼 모든 구성된 속성과 함께 XAML 파일에 저장됩니다. XAML 파일을 다시로드하려면 XAML 파일에서 참조하는 활동을 포함하는 어셈블리에 대한 컨텍스트 정보를 제공해야합니다.VS에서는 어셈블리 참조를 추가하는 것만 큼 쉽지만 리 호스팅 시나리오에서는 약간의 코드를 작성하여이 작업을 수행합니다.

.NET Framework 4 : Workflow Foundation - Beta 1 Forum

에 대한 자세한 내용을 알고 싶거나 비슷한 질문을 원할 수도 있습니다.
관련 문제