Browse by Tags

Tagged Content List
  • Blog Post: Dynamically binding the expression type in the property grid

    Previously, I demonstrated how to use an ExpressionTextBox in a custom property editor . In this followup post, I will show how to dynamically bind the ExpressionType of the ExpressionTextBox to the type of the argument of the custom activity. We don’t provide a type converter for this out of the box...
  • Blog Post: Using an ExpressionTextBox in a custom property editor

    I have fielded a couple of questions from customers and also a forum post asking how to get the binding correct for the ExpressionTextBox correct in the property grid (well Eric fielded that one with some help on our side, thanks Eric!). For the record here are the details and an explanation. WPF provides...
  • Blog Post: Imports designer 101

    Oh, the imports designer . This innocuous looking piece of UI packs a lot of functionality in a little designer. You would think that this designer should be pretty straightforward. The original concept of this feature was that this would simply be the place to manage namespaces, much in the same way...
  • Blog Post: About type coercion

    The hosted compiler does something called type coercion. It converts one type to another type using the widening and narrowing conversions specified by the big VB compiler. On the whole, this is very useful functionality. It allows you to strongly type your arguments but still set your Int16 variable...
  • Blog Post: Expression serialization and literal support

    Expressions created in the WF designer are serialized using square brackets, which is shorthand for VisualBasicValue <T> or VisualBasicReference <T>. For example, drop a WriteLine activity into a Workflow, and set its text to the expression (1+2).ToString (in VB you can omit the brackets...
  • Blog Post: End-to-end expression editing feature deck

    Hi, today I gave a talk to our support team about the expression editing feature. Since this is all public facing information, I thought I would post the deck. Some of this information is old hat to regular readers of this blog (especially the overview and programmability bits, which I ported straight...
  • Blog Post: Enter and Tab key handling in the ExpressionTextBox

    The Enter and Tab keys work a bit differently in the ExpressionTextBox than in the big VB IDE. In the big IDE, Enter and Tab always insert their associated characters. If the IntelliSense completion list is up, Enter selects the item and inserts a new line. We noticed that big IDE behavior does not always...
  • Blog Post: ExpressionTextBox – works on Activity properties too!

    So Matt Winkler read my previous post and said hey, what about properties of type Activity<foo>, can’t they be bound to ExpressionTextBoxes too? Snap, I had forgotten about that case. The answer is actually yes, because VisualBasicValue and VisualBasicReference derive from Activity, expressions...
  • Blog Post: ExpressionTextBox – for arguments only (well mostly)

    [12/19 edit: ExpressionTextBox is not strictly for arguments only, see the exception here ] In a previous post I alluded to the fact that you should be able to bind an ExpressionTextBox to a CLR property. My hazy memory was that this was done at one point in time by omitting the ArgumentToExpressionConverter...
  • Blog Post: Using untyped arguments in an ExpressionTextBox

    The ExpressionTextBox sample code in the SDK works just fine in beta 2. The sample demonstrates the use of an ExpressionTextBox in a custom activity designer. In the sample, I implemented a simple MultiAssign activity, which assigns two values to two variables. In the example, I used untyped InArguments...
  • Blog Post: ExpressionTextBox 101

    The ExpressionTextBox is the basic building block for editing expressions in custom activity designers. If you’re writing a custom activity designer that uses expressions, you’ll use this control. This post is meant to provide an overview for custom activity designer developers. I’m just going to annotate...
  • Blog Post: Expression editing mechanics

    This is what happens when you edit an expression in Visual Studio. To simplify things, pretend you started with a blank expression. Here’s what goes on behind the scenes: When you click on an ExpressionTextBox , an instance of the hostable editor is created. As you type, you will notice two things: You...
  • Blog Post: Implementing a custom expression editor

    I’ve seen a few forum posts about providing a richer expression editing experience in a rehosted workflow designer. There are two main scenarios in which you would want to implement your own expression editor: Work around the rather unfortunate limitation that the hostable editor is not available...
  • Blog Post: Design time expression editing 101

    Here are the basic implementation details that you should know about the design time expression editing experience in the WF designer. An expression is bound to an activity argument or property. In the designer, the expressions are displayed inside of an ExpressionTextBox control. You can enter one single...
  • Blog Post: VB Expression Example: Manipulating generic lists

    Let’s walk through the process of manipulating a generic list using VB expressions. Say you have added a C# class to your C# workflow project with the following code (yes, you can still use C# for all the heavy lifting): public class Person { public string Name { get; set; } public int Age { get;...
  • Blog Post: VB for C# Developers

    The lack of C# expressions in WF 4.0 is painful for all of you C# developers out there. We know, and we won’t forget about C# support when planning for future releases. However, if you are using WF 4.0, you will need to figure out how to cope with VB for now, so here are some resources to help you do...
Page 1 of 1 (16 items)