Sign in
|
Help
Peter Ritchie's MVP Blog
This is not a life-saving device.
This Blog
Home
Contact
Syndication
RSS for Posts
Atom
RSS for Comments
Search
Go
Tags
.NET 2.0
.NET 3.5
.NET 3.x
.NET Development
C#
C# 3.0
C# 3.0 Breaking Changes
C# Nugget
C++
Design/Coding Guidance
DevCenterPost
Framework Bugs
General
Interesting Find
Microsoft
MVP
Non-development
OOD
Patterns
Pontification
Resharper
Software Development
Visual Studio 2005
Visual Studio 2008
WinForms
News
Twitter Updates
Community
Home
Blogs
Media
Groups
Email Notifications
Go
Archives
September 2008 (2)
August 2008 (8)
July 2008 (8)
June 2008 (5)
May 2008 (8)
April 2008 (1)
March 2008 (4)
February 2008 (6)
January 2008 (4)
December 2007 (4)
November 2007 (1)
October 2007 (4)
September 2007 (2)
August 2007 (3)
July 2007 (2)
June 2007 (4)
May 2007 (5)
April 2007 (2)
March 2007 (4)
February 2007 (3)
January 2007 (1)
November 2006 (2)
October 2006 (5)
September 2006 (6)
August 2006 (2)
July 2006 (7)
March 2006 (1)
Nuggets
.NET 2.0 Breaking Changes
Visual Studio and .NET Framework Feedback
Microsoft Developer Network Forums
Interesting Blogs
Visual Studio Code Analysis Blog
Sara Ford's Blog
Me
Technorati Profile
Browse by Tags
All Tags
»
.NET Development
»
C#
(
RSS
)
.NET 2.0
.NET 3.5
.NET 3.x
Asynchronous Programming Model (APM)
C# 3.0
CodeRush Refactor! Pro
Connect Issue
Design/Coding Guidance
DevCenterPost
Framework Bugs
ITSWITCH
ITSWITCH Answer
Microsoft
Patterns
Pop Quiz
Rant
Resharper
Software Development
TCP
Visual Studio 2005
Visual Studio 2008
Visual Studio 2008 SP1
WinForms
Tuesday, September 02, 2008 1:49 PM
Becoming a Visual Studio Jedi Part 1
Becoming a Visual Studio 2008 (and often Visual Studio 2005) Jedi In much the same grain as James' Resharper Jedi posts, I'm beginning a series of posts on becoming a Visual Studio Jedi. It involves getting the most out of Visual Studio off-the...
Posted by
PeterRitchie
|
7 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
Design/Coding Guidance
,
Visual Studio 2008
,
DevCenterPost
Tuesday, August 26, 2008 3:06 PM
Trials and Tribulations of DataGridView, Column Selections, and Sorting
I had to implement some custom sorting in a DataGridView recently. Essentially, the stakeholders wanted full column selection (like Excel) while still having the ability to sort the data based on a particular column. This particular DataGridView is data...
Posted by
PeterRitchie
|
1 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
.NET 3.5
,
Framework Bugs
,
Connect Issue
,
Visual Studio 2008 SP1
Monday, August 11, 2008 5:34 PM
DataGridViewColumn.Frozen
DataGridViewColumn.Frozen is documented as "When a column is frozen, all the columns to its left (or to its right in right-to-left languages) are frozen as well." Which is nice until you think of the consequences. The consequences being that...
Posted by
PeterRitchie
| with
no comments
Filed under:
C#
,
.NET Development
,
Software Development
,
Design/Coding Guidance
Monday, July 28, 2008 2:00 PM
ITSWITCH #1: Answer
Last post I detailed some code that may or may not have something wrong in it. If you thought InitializeOne and IntializeTwo are semantically identical (e.g. they differ only by performance), you'd be wrong. If you simply ran the code, you'd...
Posted by
PeterRitchie
| with
no comments
Filed under:
C#
,
.NET Development
,
Software Development
,
.NET 2.0
,
Design/Coding Guidance
,
Pop Quiz
,
ITSWITCH Answer
Friday, July 25, 2008 1:58 PM
ITSWITCH: #1
A short pop quiz on design/coding in C#...
Posted by
PeterRitchie
|
5 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
.NET 2.0
,
Design/Coding Guidance
,
Pop Quiz
,
ITSWITCH
Tuesday, July 15, 2008 9:47 AM
Nested Types
Recently Michael Features blogged about nested types . The title was almost "nested types considered harmful". I don't agree. I don't agree that they're any more harmful than any other C# construct (except goto...). Nested types...
Posted by
PeterRitchie
|
2 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
Design/Coding Guidance
,
Visual Studio 2008
,
C# 3.0
,
.NET 3.5
,
TCP
,
Asynchronous Programming Model (APM)
Wednesday, June 25, 2008 8:17 PM
Comparing CodeRush Refactor! Pro and Resharper 4, part 1 or N -- first glance.
Metadata view of code in referenced assemblies This is a big one for me. For whatever reason, Refactor 4 (and prior) completely disables this and sends you to the Object Browser instead. You get metadata view with CodeRush Refactor! Pro. Keyboard layout...
Posted by
PeterRitchie
|
2 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
Software Review
,
Resharper
,
CodeRush Refactor! Pro
Wednesday, June 25, 2008 12:21 PM
Entity Framework Petition of Vote of Non Confidence
I had intended to be happy simply being a signatory of ADO .NET Entity Framework Vote of No Confidence. But, there's people suggesting signatories of this petition are wackos or on the fringe. Do yourself a favour and read the petition . Read what...
Posted by
PeterRitchie
|
2 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
Design/Coding Guidance
,
Microsoft
Monday, May 26, 2008 9:25 AM
Spaces or Tabs?
In this day and age it seems silly to get into a discussion about whether your companies coding guidelines should have a section mandating either spaces or tabs for indents. Tabs are clearly more flexible, but I really don't think it matters at all;...
Posted by
PeterRitchie
|
5 comment(s)
Filed under:
C#
,
.NET Development
,
Design/Coding Guidance
,
Microsoft
Tuesday, April 29, 2008 9:08 AM
Overcoming problems with MethodInfo.Invoke of methods with by-reference value type arguments
I ran into an interesting problem on the Forums recently. Basically, when you use MethodInfo.Invoke to invoke a method with by-reference value type arguments you can't have the invoked method update a variable/argument. The problem is, when you invoke...
Posted by
PeterRitchie
|
5 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
DevCenterPost
Friday, March 28, 2008 4:12 PM
Licences for Microsoft products
Occasionally I get development questions that are governed by one or more product licenses (End-User License Agreement, "EULA"). One question that I see is "I've used Reflector to decompile the .NET Framework and want to use that C#...
Posted by
PeterRitchie
|
7 comment(s)
Filed under:
C#
,
.NET Development
Friday, March 07, 2008 8:48 AM
Single-Entry, Single-Exit, Should It Still Be Applicable In Object-oriented Languages?
Before the modern high-level languages Edsger Dijkstra came up with "Structured Programming". This programming methodology relied on the programmer to form and enforce most of the structure of the program--manually keeping sub-structures and...
Posted by
PeterRitchie
|
32 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
Design/Coding Guidance
Monday, January 28, 2008 11:04 AM
"Object is currently in use elsewhere" error.
I was debugging what I thought was a strange exception the other day. The exception was an InvalidOperationException and the message was "Object is currently in use elsewhere". Unless you're familiar with this exception, it really doesn't...
Posted by
PeterRitchie
|
5 comment(s)
Filed under:
C#
,
.NET Development
,
WinForms
,
DevCenterPost
Tuesday, January 22, 2008 5:35 PM
Formatting/parsing for a specific culture redux
In recent blog post I detailed how creating a culture via the CultureInfo constructor could actually create a user-overridden culture--which could be completely different than the culture that you've requested by name. Fortunately there's a way...
Posted by
PeterRitchie
| with
no comments
Filed under:
C#
,
.NET Development
,
.NET 2.0
,
Framework Bugs
,
DevCenterPost
Thursday, January 03, 2008 2:27 PM
Visual C# Developer Center Article
My latest Visual C# Developer Center Article Inferred Typing with Factory Methods as Extension Methods is now online.
Posted by
PeterRitchie
| with
no comments
Filed under:
C#
,
.NET Development
,
C# 3.0
,
.NET 3.5
Thursday, December 27, 2007 9:47 AM
Formatting/parsing for a specific culture
Sometimes you may want to use a specific format for formatting and parsing of textual data. The easiest way to do this is to select a specific culture and use that with formatting and parsing methods. Unfortunately, the CultureInfo constructor that just...
Posted by
PeterRitchie
|
3 comment(s)
Filed under:
C#
,
.NET Development
,
DevCenterPost
Friday, December 21, 2007 9:45 AM
Bridges and Factories
In my previous post , I talked about Dependency Injection (DI). One implementation of DI is using interface-oriented design to abstract a class from an injected dependency via an interface. This is one possible implementation of the Bridge pattern. Depending...
Posted by
PeterRitchie
|
6 comment(s)
Filed under:
C#
,
.NET Development
,
Patterns
Thursday, December 13, 2007 9:42 AM
Dependency Injection
Dependency injection (DI) is a form of inversion of control. There seems to be a tendency in some circles to refer to dependency injection as inversion of control (IoC). Dependency injection is a form of abstraction by removing physical dependencies between...
Posted by
PeterRitchie
|
1 comment(s)
Filed under:
C#
,
.NET Development
,
Software Development
,
Patterns
Friday, October 12, 2007 12:13 PM
Using Exceptions For Normal Logic Flow
The generally accepted wisdom is that you shouldn't use Exceptions for normal logic flow. Normal logic flow is a bit subjective; but anything that must happen at least once in all known scenarios is normal logic flow. Enter XML Serialization in the...
Posted by
PeterRitchie
|
3 comment(s)
Filed under:
C#
,
.NET Development
,
.NET 2.0
,
Rant
Thursday, July 12, 2007 9:30 PM
Performance Implications of try/catch/finally, Part Two
In a previous blog entry Performance Implications of try/catch/finally I outlined that the conventional wisdom that there are no performance implications to try blocks unless an exception is thrown is false. I have some clarifications and details to add...
Posted by
PeterRitchie
| with
no comments
Filed under:
C#
,
.NET Development
,
.NET 2.0
,
Design/Coding Guidance
More Posts
Next page »