<p>忘れないように、修正したコードをメモを残すことにする。&phi;(≧。≦)最近物忘れが激しくてのぉ。。。。</p>
<pre>using System.Deployment.Application;

<span class="preblue">private void</span> button1_Click(<span class="preblue">object</span> sender, <span class="prebluegreen">EventArgs</span> e)
{
    <span class="pregreen">// ClickOncenでインストールされたか確認</span>
    <span class="preblue">if</span> (!<span class="prebluegreen">ApplicationDeployment</span>.IsNetworkDeployed)
    {
        <span class="prebluegreen">MessageBox</span>.Show(<span class="prebrown">&quot;ClickOnce を使用していません。&quot;</span>);
       <span class="preblue">return</span>;
    }
    <span class="pregreen">// 強制的にアップグレード</span>
    <span class="prebluegreen">ApplicationDeployment</span> deploy;
    deploy = <span class="prebluegreen">ApplicationDeployment</span>.CurrentDeployment;
    deploy.Update();<span class="pregreen">//アップグレードの実行</span>
    <span class="prebluegreen">MessageBox</span>.Show(<span class="prebrown">&quot;更新終了。再起動します。&quot;</span>);
    <span class="prebluegreen">Application</span>.Restart();
}
<span class="preblue">private void</span> Form1_Load(<span class="preblue">object</span> sender, <span class="prebluegreen">EventArgs</span> e)
{
    <span class="pregreen">// ClickOnce でインストールされていた場合、バージョン表示</span>
    <span class="preblue">if</span> (<span class="prebluegreen">ApplicationDeployment</span>.IsNetworkDeployed)
    {
        <span class="pregreen">// 現在のバージョンをタイトルバーに表示する</span>
        <span class="prebluegreen">ApplicationDeployment</span> deploy = <span class="prebluegreen">ApplicationDeployment</span>.CurrentDeployment;
        <span class="prebluegreen">this</span>.Text = deploy.CurrentVersion.ToString();
    }
}
</pre>
<p>修正したら、他は問題なく動作しました。</p>
<p>以前も書いたのだが、登録フォームなどの登録ボタンにこの機能を割り当てようと思っている。<br />
ずっと登録画面で放置されている場所では、ここしか登録する場所がない。（￣□￣；）！！<br />
いつもメニューに戻ってくれるなら、メニューのボタンに登録する方が楽なのだが...<br />
登録ボタンに割り当てると、せっかく入力した内容が消えることになるので、次は入力した内容を XML ファイルに保存しておいて、再起動後に読み込めればいいかな(その項目があった場合。入力チェックが変わってたら面倒だな...)と考えている。</p>