関数名とクラスのプロパティ名が同じ場合に長い名前指定を回避するには?

解決


MenPin  2005-08-24 11:05:11  No: 124364

.Netのなのですが、Formクラスのなかのメソッドの中で、Right関数を使おうとすると、FormのRightプロパティと認識されてしまって、関数として認識されません。
それを回避する為には関数名の前に、
  Microsoft.VisualBasic.Right
の様に長い名前空間?を付けなければいけないとヘルプに書いてありました。
まあ関数名がプロパティ名とかぶることはあまりないと思いますが、いちいち長い関数名を指定するのは大変なので、この様に長い関数名を指定しなくてもよい方法はないでしょうか?
フォームのプロパティ名は「フォーム名.プロパティ名」で指定して、関数名はそのまま「関数名」とすれば長い名前を指定しなくてもいいと思うのですがそのへんは.Netの仕様なのでしょうかね


Blue  2005-08-24 11:36:58  No: 124365

Microsoft.VisualBasic.Rightではなくて、
System.String.SubStringを使ってみるのはどうでしょうか?


ねろ  2005-08-24 16:53:01  No: 124366

Imports ディレクティブを使えば、名前空間のエイリアス(別名)指定が出来ます。
たとえば
Imports VB = Microsoft.VisualBasic
としておけば「Microsoft.VisualBasic」の代わりに「VB」が使用できます。
Dim s As String = "aaaa"
s = VB.Right(s, 2)
こんな感じで。


MenPin  2005-08-28 03:28:32  No: 124367

回答ありがとうございます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加