This article was written by Alan Mendelevich

 

Hi

 

Recently I’ve been working on a set of custom WPF controls.

There are numerous good books and articles about WPF in general and some basic information on custom control development but I have yet to find a good article (or book) with in-depth coverage of custom control development in general and design-time related issues in particular.

 


Continue Reading...

Hey all,

 

a while back we had 2 great posts and one page about visual studio shortcuts. The first one had a list of 10 Visual Studio Shortcuts and the second one had 11 Visual Studio Shortcuts. We also have a Visual Studio CheatSheet with all the Keyboard shortcuts Visual Studio has.

 

Here is another list of 5 Shortcuts I have picked up along the way.

 


Continue Reading...

bugs

We all know what breakpoints are, they tell the debugger that an application should break and pause execution, at a certain point. If we want to get certain information at this point, we need to copy it down to a paper or to the notepad. There are breakpoints which get hit hundred of times during the execution of a program, so it may be very exhausting to write down the breakpoint information each time it is hit. Well, last week, while I saw John Cunninghams session at PDC 2008 about Visual Studio Debugger Tips & Tricks, I learned something new. The Visual Studio debugger has another feature called tracepoints.


Continue Reading...

PHP for Visual Studio This is something for all you .NET developers who have a WordPress blog which is in PHP and some time you need to do some PHP work (Like me). Or if you just want to work with PHP on your Visual Studio 2008/2005. jcxsoftware have developed such a Visual Studio Plugin.

It supports PHP4 and PHP5, you will also get Syntax highlighting and Intelisense for the following:


Continue Reading...

Last week a co worker of mine who wanted to remain anonymous, ran into the weirdest problem. She tried to use the “find in files” option in Visual Studio 2005 and even though the searched expression was out there in one of the files, she got the following result: “No files were found to look in. Find was stopped in progress.”

You can close Visual Studio, restart your computer or jump three times on one leg, but the problem remains. This is a very strange and odd bug, but fortunately there is a solution: press…


Continue Reading...

todo-list How many times did you write a TODO comment in your code? How many times did you forget about this comment and met it again only some months later? It happens a lot to most of the developers who eventually tends to write their TODO missions on some papers, notepad or a ToDoList application. From what I know, most software developers are not aware of the fact that they can view all of their TODO comments in one list.


Continue Reading...

We never published a lists of blog posts we liked, so this will be the first time. I gathered some links from my Google Reader shared items, some of those links are old, some are new, but I liked them all. So here is the list of 7 post/articles I recommend:

  1. Phil Haack is talking about the fact that The Design Is Never Right The First Time. I think that it is OK that the design won’t be right the first time, but it should be good at the first time. Explanation: the fact that Phil could change the implementation over night tells me that his initial design was very good. It is not that simple to change the design and the implementation so close to the deadline… I know some projects where you can’t replace some code just like that, it will take too much time to do it…
  2. Scott Hanselman tells that there is a post at the Microsoft StyleCop blog that shows some rules about directives outside and inside the namespace declaration. In his post Back to Basics – Do namespace using directives affect Assembly Loading?, he discovers that we shouldn’t believe everything we read, even on a Microsoft Blog.
  3. Jeff Atwood wrote about Dealing With Bad Apples in a team and that if you tolerate even one developer whom the other developers think is a problem, you’ll hurt the morale of the good developers. I totally agree, those situations lead to a very negative attitude in the team and after some time, it is too late because the “cancer” has spread to the whole team.

Continue Reading...

When we work on big projects, there is a need to set up a development tree (directory structure) and not just put everything in the bin\Debug or bin\Release folder. There are some “how to set up a good development tree” best practices and even a .NET development tree generator called Tree Surgeon. Some of the folders in this directory structure shall be “Resources” (set of icons and images) and “Config” (set of configuration files).

How many times did you search for a specific configuration file or a specific icon in the development tree (assuming it is a big one)? You come back to a component you wrote several years ago and can’t recall where did you locate your files. Wouldn’t it be nice if for each project, our resources and configuration files could be seen form visual studio? We would never need to find them using the windows explorer anymore and we will always have them right there even when coming back to a code which was written 2-3 years ago.


Continue Reading...

Sometimes we are using the same patterns of code over and over again. Those of us who are lazy (but smart) will create their own code snippets, if you are not familiar with this subject, read about how to create code snippets easily. But what if we need to create lots of classes with the same pattern? Code snippets may not be enough because they lack of some functionality which is needed to achieve our goal. Consider the following code:

abstract class FourWheelsVehicle : IVehicle
{
    abstract public double MaxVelocity { get; }

    abstract public string Manufacturer { get; }

    abstract public double Price { get; }

    abstract public int YearManufactured { get; }

    virtual public int NumberOfWheels
    {
        get { return 4; }
    }
}

An abstract class called FourWheelsVehicle implements the IVehicle interface (which is not presented here because it is not important for our matter). Our task is to create classes which represent each and every existing 4 wheels vehicle, there is a lot of work to do, a huge amount of work. So, I started by implementing Mazda6 class:


Continue Reading...

This is a guest post written by John Daniel-Trask from Mindscape.

Mindscape have released a major upgrade to their LightSpeed domain modelling / ORM tool. Version 2.0 includes a visual model designer integrated into Visual Studio, LINQ support, and the ability to access multiple databases concurrently. LightSpeed is a small, fast domain modeling tool which uses convention over configuration to perform object-relational mapping without the need for complex mapping files.

In the past it’s been necessary to code LightSpeed models explicitly in C# or Visual Basic, but the new Visual Studio-hosted designer enables a more data-centric approach: developers can drag tables from Server Explorer and LightSpeed automatically creates the models for them. Developers can also add validations and tune performance parameters such as caching and lazy/eager loading through the designer. The designer also supports a “round-tripping” approach whereby changes to the database can be applied incrementally to the…


Continue Reading...