ようこそ。睡眠不足なプログラマのチラ裏です。

VB.NET

データバインディング その1

単純にSystem.Windows.Forms.Formを継承したFormに配置したTextBoxのTextプロパティに対して、 特定のクラスのプロパティをバインドする方法の1つを示します。 方法その1、.NET Framework 1.1の場合。「プロパティ名 + Changed」 イベントの提供これだけで…

遅ればせながら、Visual Studio 2008 Beta 2 日本語版をインストールしてやったわブワハハハア!!(壊 (ダウンロードに2時間、DVD-R焼くのに20分、VSインストールに1時間、MSDNインストールに1時間・・・。) Visual Studio 2008 Beta 2 日本語版 http://www.…

入れ子になったユーザーコントロールの DesignMode プロパティについて

マイクロソフトのサポートオンラインによると 入れ子になったユーザーコントロールの DesignMode プロパティは、 False に Visual Studio .NET または Visual Studio 2005 に常に設定されます。 現象 Microsoft Visual Studio .NET または Microsoft Visual …

アパートメントモデルと、.NETのSTAThreadAttribute

アーパートメントモデルの種類COMコンポーネント*1は、大きくシングルスレッドアパートメントモデル(STA)と マルチスレッドアパートメントモデル(MTA)に分けることができる。 レンタルスレッドアパートメントモデル(RTA)というのもあるようですが、詳細…

ビットタイプの列挙型(FlagsAttribute属性)について

※後に書いた、「FlagsAttributeとビット演算のちょっとしたレシピ」はこちら →http://d.hatena.ne.jp/zecl/20081223/p1 基本的ではありますが、.NETにおける、ビットタイプの列挙型のお話。 Enum型にFlagsAttribute属性を与えると、ビットフィールドとして扱…

IClonableインターフェイスとMemberwiseCloneメソッド

今日は、.NETにおけるクローンオブジェクトなお勉強です。 インスタンスの中身をコピーする方法は、大きく分けて3つあります。 1つは、何も考えずにインスタンス内のメンバを手動でコピーする方法。 2つ目は、System.Reflectionを利用して、メンバをコピ…

デザインパターン第10回「Iteratorパターン」その1

後に書いた、デザインパターン第15回「Iteratorパターン」その2はこちらです。 なんだかんだで10回目を迎えましたデザパタ講座です。 さて今回は、GoFデザインパターンより「Iteratorパターン」をぬるーく解説します。 Iteratorパターンは、集約オブジ…

System.Windows.Forms.Formの派生クラスをシリアライズしてみる

画面オブジェクト(System.Windows.Forms.Formの派生クラス)の、 特定のプロパティをシリアル化してXMLに保存したり読み込んだりする機能について、必要に迫られました。 特定のプロパティを抽出してSerializableなクラスをつくり、それを画面オブジェクトの…

Webサービスでクラス渡しを実現するためのメモSystem.Xml.Serialization.XMLSerializer や、 System.Runtime.Serialization.Formatters.Soap.SoapFormatter というクラスがある。XMLSerializerはPublicなフィールドのみがシリアライズ対象となって、 SoapFor…

第1回「C#とVB.NET比較 」

■中間コードによる、大文字、小文字の識別 2つの言語の違いを比較する際に、まず思い浮かぶのは、両者の構文の相違である。 まず、構文を語る上で避けて通れない大きな違いのひとつは、 C#では大文字と小文字の違いが区別されるのに対し、VB.NETでは区別さ…

boxingとunboxing

ボックス化(boxing)とは、基本型(primitive type)からオブジェクト型(object type)へ変換することです。 その逆ををボックス化解除(unboxing)と呼びます。 これはつまり、値型と参照型を必要に応じて相互変換する機能です。 boxingは値型を参照型に変換する…