WinForm で InitializeComponent の中で オブジェクト初期化子を書くと デザイナー でエラーが出る

タイトルの通り。 

久々に WinForm を触る機会があってハマったのでメモ。

オブジェクト初期化子はこれのこと。
オブジェクト初期化子とコレクション初期化子 (C# プログラミング ガイド) | Microsoft Docs

private void InitializeComponent()
{
    this.button1 = new System.Windows.Forms.Button();
    this.SuspendLayout();
    // 
    // button1
    // 
    this.button1.Location = new System.Drawing.Point(34, 148);
    this.button1.Name = "button1";
    // this.button1.Size = new System.Drawing.Size(138, 57);
    this.button1.Size = new System.Drawing.Size
    {
        Width = 138,
        Height = 57
    };
    this.button1.TabIndex = 0;
    this.button1.Text = "button1";
    this.button1.UseVisualStyleBackColor = true;
    ...
}

こんな風に オブジェクト初期化子を書いて Form の デザイナーを開くとこんな エラー が出る。

メソッド 'InitializeComponent' を解析できませんでした。パーサーによってエラー 'オブジェクト参照がオブジェクト インスタンスに設定されていません。' が報告されました。エラーの原因と考えられるものをタスク一覧で調べてください。 
場所 Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomParser.OnMethodPopulateStatements(Object sender, EventArgs e)
場所 System.CodeDom.CodeMemberMethod.get_Statements()
場所 System.ComponentModel.Design.Serialization.TypeCodeDomSerializer.Deserialize(IDesignerSerializationManager manager, CodeTypeDeclaration declaration)
場所 System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager manager)
場所 Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager serializationManager)
場所 System.ComponentModel.Design.Serialization.BasicDesignerLoader.BeginLoad(IDesignerLoaderHost host) 

InitializeComponent を手で修正する方がアレですが、まあ気をつけて。