The official Fatica Labs Blog! RSS 2.0
# Tuesday, 07 June 2011

Sacha Barber expand his work on a very famous project presented about 4 years ago on CodeProject. It is a very interesting project about class diagram creation in WPF, mainly because is a good field for learning advanced WPF functionality. Here Sacha explain the new version, and below a screen shot:

Tuesday, 07 June 2011 20:22:55 (GMT Daylight Time, UTC+01:00)  #    Comments [0] - Trackback

Just add a new feature to decide where to place the vertical axis: left or right aligned to the plot area. Here the property usage:

<ddd:ChartPlotter MainVerticalAxisPlacement="Right"  >


A modification was necessary even in the WidthSpring element, the one that allow us to keep more than one chart synchronized on the X axis ignoring the space taken by the label area. It is now possible to specify that the WidthSpring must act on the left of the chart. Here the usage with the new properties:

<ddd:WidthSpring ActiveOnSide="Right" SourcePanel="{Binding RightPanel, ElementName=volume}"/>


by this addition the chart behave correctly even with the right side placed vertical axis:


Source for this project can be found here.

Tuesday, 07 June 2011 20:15:50 (GMT Daylight Time, UTC+01:00)  #    Comments [0] - Trackback
D3 | WPF

# Wednesday, 01 June 2011

The current ( trunk ) implementation of Caliburn Micro introduces a new element in the phase of obtaining the view type name from the model name. The name of the View type is obtained from the name of the ViewModel type by applying a series of rules based on RegEx match and replace patterns. These rules has some defaults values, but others can be added externally by calling


There is an important default that is given by the following pattern:

NameTransformer.AddRule("Model$", string.Empty);


This is the rule that allow old model view naming convention works properly.

If you have some not up-to-date trunk version you can experience some problem, have a look at this discussion. The current doc of NameTrasformer is the source code of the ViewLocator and the ViewModelLocator from which you can derive what conventions are applied.

Wednesday, 01 June 2011 13:41:00 (GMT Daylight Time, UTC+01:00)  #    Comments [0] - Trackback
Caliburn | WPF

# Wednesday, 25 May 2011

In  the previous sample we shown how to present multiple chart by keeping them aligned in order to be comparable on the horizontal axis by using the WidthSpring feature. But D3 charting can automatically pan and zoom ( both by rect zoom by pressing control and left dragging the mouse on the chart, or by the wheel ) and in this case we loose the axis synchronization. Here below the undesired behavior:

image On the left we see the top chart zoomed, the other ones show the horizontal range thus there is no more relation among the three charts.

So we create an attached property as below:

<ddd:ChartPlotter x:Name="price" ddd:SynchroVisible.Axis="X" ddd:SynchroVisible.With="{Binding ElementName=volume}" …>

by applying this property we choose which axis synchronize ( X in the example, but can be Y or XY ) and which chart keep synchronized with, in this case we bind with the chart named “volume”. By repeating the property two chart by two chart:

<ddd:ChartPlotter x:Name="volume" ddd:SynchroVisible.Axis="X" ddd:SynchroVisible.With="{Binding ElementName=ma}" …>
<ddd:ChartPlotter    x:Name="ma"  ddd:SynchroVisible.Axis="X" ddd:SynchroVisible.With="{Binding ElementName=price}" …>


so we achieve this interesting result without any code behind:

image This is the result after panning the chart ( by dragging the mouse pointer into the chart area in any of the three chart ) as you can see the other chart properly follow…
image The same apply if we zoom on the chart area ( by pressing ctrl while dragging, or by the mouse wheel ) other chart amplify the resolution on the synchronized axis and the start position accordingly.

Check out the source for this example here.

Wednesday, 25 May 2011 21:49:37 (GMT Daylight Time, UTC+01:00)  #    Comments [5] - Trackback
Charting | D3 | WPF

# Monday, 23 May 2011


This is a new book written by Alberto Población I had a chance to read, and I want to say a few words about it. I think it cover the art of programming by a very practical point of view: you can find here some tricks to solve everyday troubles that other books simply forgot to talk about. There is a chapter on data access, explaining the common pitfalls and relative solutions, to make code faster, but even for having the application appearing faster ( ie, more reactive ) to the user. An entire chapter is about new features of Windows 7: what about the new taskbar? what’s in the new shell ? What can we do in C# with the new operating system features ? And then… a lot more in GDI+ graphics, since we don’t always need to buy a control library for customizing a control, as well as for creating a simple report. Chapter 4 talks about serialization, but explaining some advanced features that really can save our time, especially when we need to parse thirty party xml files.Chapter 5 is about reflection, but again it cover some usages in the usual annoying deploy troubles. Chapter 5 is a remainder for tips and tricks we really don’t need everyday, but that sometimes appear as very hard nuts to crack, for example, did you never experience problems in reading files with some exotic encoding? Last chapter is a recipe book about WinForm that we should read in order to know how to  achieve some special effect as non rectangular form, as well as some tips on task dialogs in Windows 7. 

So in conclusion, a very interesting and original book who real world programmer and consultant using .NET should have in the tool belt. Unfortunately nothing is said about pure Web Programming as well as WPF or WCF and networking: but many concept applies even for these frameworks since we are talking at a very low level approach.

Book has a code we can download online from here. Check out the book from Amazon.

Monday, 23 May 2011 20:58:04 (GMT Daylight Time, UTC+01:00)  #    Comments [1] - Trackback
Book | Reviews

Since contacting the original team for sending patches did not success, I decided to share my sources here. You find the bar chart and the candlestick I was talking in this previous post. Hope you find this useful.

Monday, 23 May 2011 11:53:56 (GMT Daylight Time, UTC+01:00)  #    Comments [3] - Trackback
Chart | Dynamic Data Display | WPF

My Stack Overflow

Send mail to the author(s) E-mail

profile for Felice Pollano at Stack Overflow, Q&A for professional and enthusiast programmers
About the author/Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2019
Felice Pollano
Sign In
Total Posts: 157
This Year: 0
This Month: 0
This Week: 0
Comments: 127
This blog visits
All Content © 2019, Felice Pollano
DasBlog theme 'Business' created by Christoph De Baene (delarou) and modified by Felice Pollano
Nike Winkels Nederland Outlet Nike Nederland Store Outlet Nike Nederland 2015 Outlet Nike Outlet Online Nike Sneakers Outlet