とりこらぼ。

Learn from yesterday,
live for today,
hope for tomorrow.

目次

Blog 利用状況

ニュース

プロフィール

  • 名前:とりこびと
    とるに足らない人間です。

  • Wankuma MVP
    for '平々凡々'

Web Site

  • Memo(Of T)

もうひとつの Blog

広告っぽい

書庫

日記カテゴリ

.Designer.vb は何してますか?その2。- Partial ってなにさ? -

<Attention>
   その1に載せたコードを前提に書いています。
</Attention>

今回は単なるキーワードのお話です。IDE云々の話ではありません。

さて、Partial ですが、MSDN!MSDN!

MSDN:Partial (Visual Basic) (http://msdn2.microsoft.com/ja-jp/library/yfzd5350(VS.80).aspx)より。


クラスまたは構造体の宣言が、クラスまたは構造体の部分定義であることを示します。

要するにある宣言が定義のすべてを網羅していませんよ~、他のところにも定義しているところがあるかもしれませんよ~ってことですかね。
試してみましょうか。Visual Studio 2005 を使用して Visual Basic で WindowsApplication プロジェクトを作成します。プロジェクト名は「WindowsApplication1」でいいですね。(いい加減コレやめとこか・・・。)
そこにひとつクラスを追加してみましょう。「Class1」でいいですよ♪Class1.vbというファイルができましたね?それを開いてみます。

Public Class Class1

End Class

それを以下の内容に変更します。

Public Class Class1

End Class

Partial Class Class1
End Class

これで出来上がりです。下の Partial Class Class1 が Class1 の部分定義です。この二つの宣言の内容すべてが Class1 の定義になるんですね。逆に言うと、Class1の定義を分割して書けるわけですね。

ちなみにこんなこと↓しても問題なし!

' 基本となる宣言。Partial クラスが存在しても Partial キーワードがなくってよさげ。
Public Class Class1

End Class
' Partial な宣言。 Partial Class Class1
End Class
' もいっこ Partial な宣言。 Partial Class Class1
End Class
' もいっこ Partial な宣言。アクセスレベルは同一であれば書ける。 Partial Public Class Class1
End Class
' もいっこ アクセスレベル付きのPartial な宣言。 Partial Public Class Class1
End Class

ここで注意事項です。先ほどのMSDNからの引用になりますが、

すべての宣言は同じアセンブリと同じ名前空間内にある必要があります。

べべ、べつに TextBox の Partial クラスを作ろうとしたとか、そんなんじゃないですよ!!(´Д`;;;)

・・・というわけで、その1で作成された Form1.Designer.vb は Form1 クラスの部分定義が書かれたファイルだったんですね。ユーザーコードとデザイナコードを分離するためでしょうか。

とはいえ、この Partial って、自分ではあんまり使ったことがないです。もともと整理整頓がうまくないので定義を整然と分割できない、なら一箇所でいいや♪って感じです。うまく使うとファイルやらコードやらすっきりするんでしょうけど・・・

どなたか活用法を教えてくださいませ。m(_ _;)m



# しかしなぜ、Dispose()がこっちに・・・。

投稿日時 : 2007年3月16日 14:17

Feedback

# re: .Designer.vb は何してますか?その2。- Partial ってなにさ? - 2007/03/16 14:39 とりこびと

>すべての宣言は同じアセンブリと同じ名前空間内にある必要があります。

Extension Methods はどこまでいけるのかなぁ・・・?

# re: .Designer.vb は何してますか?その2。- Partial ってなにさ? - 2007/03/16 16:19 囚人

思考の試行が似てますな!
http://blogs.wankuma.com/shuujin/archive/2006/06/04/29968.aspx

# .Designer.vb は何してますか?その3。 2007/03/16 17:29 とりこびと ぶろぐ。

.Designer.vb は何してますか?その3。

# re: .Designer.vb は何してますか?その2。- Partial ってなにさ? - 2007/03/16 17:39 とりこびと

囚人 さん、コメントありがとうございます。

光栄でございます。

しかし・・・やっぱり囚人さんだった。orz
エントリ中にふと思って書き加えたんですが、どこかで見たことあるような気もしてたんですよ。

IDisposable な変数をメンバとして保持せざるを得ないときにわざわざ Designer.vb 開くのってどうよ?って感じですね。

# Visual Basic で○○を作ってみよう。その2。 - クラスとかつくってみたらええやん。- 2007/05/01 10:24 とりこびと ぶろぐ。

Visual Basic で○○を作ってみよう。その2。 - クラスとかつくってみたらええやん。-

# kDPKohBTZAmThWAgeuV 2021/07/03 5:03 https://www.blogger.com/profile/060647091882378654

The loans may also be given at very strict terms as well as any violations will attract huge penalties super real property tax

タイトル
名前
Url
コメント