便乗質問させて下さい。

VC#2005でWindowsアプリケーションを新規作成します。
するとForm1.Designer.cs内に最初から下記のコードが書かれています。(必要な部分だけ抜粋しています。)

 private System.ComponentModel.IContainer components = null;
 protected override void Dispose(bool disposing) {
  if (disposing && (components != null)) {
   components.Dispose();
  }
  base.Dispose(disposing);
 }
 private void InitializeComponent() {
  this.components = new System.ComponentModel.Container();
 }

しかし、Form1.cs[デザイン]を使ってButton等をポトペタすると、
  this.components = new System.ComponentModel.Container();
という部分がコードから綺麗に消えてしまいます。

とても奇妙に思えるのですが、これは何を意味しているのでしょうか?
そして最後までnullなthis.componentsと、
それを参照するDisposeメソッドは残しておく必要があるのでしょうか?