Browse by Tags

Tagged Content List
  • Blog Post: WF3 Design Time Performance - II

    Recently, we worked with one of the customers whose designer launch was painfully slow. The project was a medium sized one and hence the performance degradation was particularly baffling. To figure out what's wrong, I did an Attach to Process(to debug) with another VS instance to the VS with the workflow...
  • Blog Post: WF3 Design Time Performance - I

    Before, we start talking about the WF3 design time performance, let me clarify some of the terminologies: 1. WF3 is the version of Workflow shipped as part of .NET Framework 3.0 and 3.5. Note that WF3 is also shipped as part of .NET Framework 4.0. Meaning, System.Workflow.* assemblies are shipped...
  • Blog Post: Mocks for Unit Testing

    This post is not exactly related to Designer, but something I am looking closely into nowadays. Recently a customer asked, how can he replace one of his long running activities with a different mock activity so that he can still unit test his workflow/composite activity logic. Another scenario would...
  • Blog Post: Base Designer with additional adornments II

    Couple of customers reported an issue with applying additional adornments on the designer discussed in this post . The issue was for out of box activities which didn't have a custom designer(were using the ActivityDesigner) itself, the adornments were not working. An example would be the Delay activity...
  • Blog Post: Storing your information into activities during design time

    Continuing with the theme of questions we get from customers: How can we store some specific information into activity. One of the cases might be since we don't provide a unique identifier for an activity, the developer wants to store the unique ids per activity. This way he can differentiate between...
  • Blog Post: Hiding the Breadcrumb

    We continue to get requests from customers we didnt anticipate. And we continue to solve those problems – some way or the other. This one is that “some way”. I dont love it. But hey, if it helps the customer, it works. The customer wanted a way to hide the breadcrumb. Since we didnt have a specific...
  • Blog Post: Icons for the Designer

    We have already seen how to have icons for the toolbox items. However, unfortunately, it is not the same way for the icons on the designer surface. Good news though, it is not that difficult. As we create our ActivityDesigner, we essentially need to add the following property: < sap:ActivityDesigner...
  • Blog Post: Binding activity properties to a custom control

    Today, for a re-hosted application, generally users have the Designer, Toolbox and the Property Grid. The property grid provided has been hooked up pretty well with the designer. Thus any changes to the properties of an activity on the designer surface are bound pretty tightly with the property grid...
  • Blog Post: Designer in View

    Recently, a customer asked how can we get the designer in focus if we know the Model Item for that activity. This can specifically be of value as you are working with large workflows and huge scrolling for going from top to the bottom. This can now be achieved pretty simple: modelItem.Focus();...
  • Blog Post: Observing Model Item changes

    One of the customers, recently reported an issue where he was not observing the changes he had just made through the model item on the activity. This is what he was trying: void modelService_ModelChanged( object sender, ModelChangedEventArgs e) { activity.Properties[ "Id" ].SetValue(1); int...
  • Blog Post: Adding activities out of box to the VS toolbox

    In the previous posts , we have already see as to how we can get the custom activities shown up in the toolbox. Either the activity is part of your solution or we use the Choose Toolbox Item dialog. However, some of our customers want to deliver their custom activities out of box. Their user shouldn...
  • Blog Post: Dev-BA Collaboration:Part-3

    Scenario: A BA starts with the Workflow authoring using the Re-hosted workflow designer and the Toolbox activities provided in the palette. At some point, the BA figures out that the Toolbox doesn't contain an activity that he is looking for. Only option that the BA has for him is to work offline...
  • Blog Post: Dev-BA Collaboration:Part-2

    In the series, the next question we generally get is, How about Validations. How can I have one set of validations for Devs in VS only and another set for BAs in a non-VS environment. To demonstrate that, again I have developed it on top of the sample application we saw in the previous post. In...
  • Blog Post: Dev-BA Collaboration:Part-1

    One of the selling points with Workflows is customers have been able to customize the Workflows and can have a collaborative work between the BAs and Developers. BAs define the business process using the Re-hosted Workflow designer and the dev fine tunes/completes the implementation by taking the Workflow...
  • Blog Post: Workflow Toolbar and Customizations

    In the re-hosted scenario, as part of customizations that domain specific users want – we have been asked many times as to how can we not show the toolbar at the bottom of the designer or show only specific items in that toolbar? Internally we refer to it as the Shellbar as well and the API to...
  • Blog Post: Toolbox Tooltips and Icons

    In regards to Toolbox, another common question I get is how can we get the Tooltips and icons for our custom activities. Well, quite simple actually: 1. Description attribute for the Tooltip 2. ToolboxBitmap attribute for the Icon Have both these attributes for your custom activity and once...
  • Blog Post: Undo-Redo : Programmatically

    One of the very essential services while authoring Workflows is Undo-Redo. Common question asked is, how do we get the service outside of VS, in a re-hosted Workflow scenario. Well, in your re-hosted app(assuming it is WPF), it would be: Add the following command bindings: <Window.CommandBindings>...
  • Blog Post: Base Designer with additional adornments

    In the previous two posts, we talked about the visual view on the Workflow tracking data and how we can have a restricted debugging experience in the re-hosted scenarios. Moving forward, the next question I get from customers - Is there a way I can show some kind of adorner on the designer when it...
  • Blog Post: VisualWorkflowTrackingWithStepService

    In the last post, we went through the SDK sample where we saw how to use the Designer and the Debugger APIs to understand the workflow execution logic outside of VS in a visual manner. This is certainly one step above the textual tracking records received and making a sense out of it. We will now...
  • Blog Post: VisualWorkflowTracking aka WorkflowSimulator

    In the Beta2 SDK, we shipped a sample called WorkflowSimulator. Essentially, the sample is using the tracking APIs to have a visual understanding of the Workflow execution logic. Thus, as we hit “Run Workflow”, we get the debug kind of adornments on each activity that executed. Let’s actually...
  • Blog Post: Differentiating between Cut-Copy-Paste/Undo-Redo/Drag-Drop/Move

    A couple of customers have asked this one, as they work with the Programming Model, how do I know if an activity has been drag-dropped vs Copy-Pasted vs an Undo-Redo happened. How do the customers use it? Well, for one of them they wanted to change the name of the activity if it is a Copy-Paste as...
  • Blog Post: Using the Sequence Styling

    One of the most commonly used designers and generally the root is the Sequence activity. Of course, we spent some amount of time adding the animation and styling to the the Sequence Activity Designer. However, due to a number of reasons(costs mainly), the activity designer is internal. However, the...
  • Blog Post: IActivityTemplateFactory

    As part of workflow authoring, it is always the case where the customer says, I like your out of box activity, however it has too many arguments/properties. I don't want to ask my user to set all these properties. And hence, now I would need to write a custom activity which has some of these properties...
  • Blog Post: Morphing

    Lets talk about a couple of common customer scenarios/questions that I have encountered till date. 1. Workflow authors want to use the generic activities such that they can start with Activity<Object> and then dynamically without having to replace the activity on the canvas want it to be changed...
  • Blog Post: .NET Source Code Debugging

    Recently I came across this blog from ScottGu and was thrilled to see this initiative from the .NET team. Imagine now being able to debug seamlessely into the .NET framework code. Gone are the days where you have to downaload the Reflector to look at the .NET code to understand its workings. The steps...
Page 1 of 2 (31 items) 12