Why would you want to take something very technical, such as the Visual Studio designer environment, and put it into the hands of end users? I suppose it depends on who your end users are. In my case, I had a controlled group of people who needed a WYSIWYG way to design window stickers for cars, a tool with deep integration into our backend and handheld systems. When I was given the first example background PDF I realized this was doable. I can create an image that is exactly %print resolution% x 8.5" x 11", and my handheld ONLY supports printing at 72dpi. Easy enough: make a background image that's 612x792 pixels. 1 pixel on screen=1 point on my printed document, and I'm on my way to creating a window sticker designer. Here's a simple example of the beta of my new designer using the VS2005 surface:
While the Visual Studio designer surface is not Visio, it does work well for things that need to be shown in spatial relations to other things, and in some cases allows user interface design elements to be chosen after deployment, and by someone besides me. You can see here I have the basic elements you see in VS2005: a toolbox, a property grid, and a surface I am dragging and editing controls on. An XML file format describes the locations of various things on the form. So, how did I build this? Its about 6000 lines of not very straightforward code before you get into anything specific to your problem domain. Speaking of problem domains, could you use DSL tools for this type of thing? Maybe, but I have quite a bit of control by hosting this myself and of course I'm not distributing Visual Studio to non-programmers. In a future project, I may look into what it would take to host the DSL tools outside of visual studio, but I expect its fairly similar to what I'm doing here. Anyway, as far as building this, I thought I'd see if the VS Class Diagram tool could reverse engineer some relationships for me before I get into code. No such luck:
I gave up after this point, although these are some of the most important classes, so I'll need to invest some time into StarUML or just jump into code. Its a long road to getting a Form to show up in designable fashion, stay tuned.
Remember Me
a@href@title, strike
Powered by: newtelligence dasBlog 2.0.7226.0
Disclaimer The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.
© Copyright 2008, Damon Payne
E-mail