2012-01-20 7 views
-3

に変換しています。誰かがそれをc#に変換できたら助けてくれるVBコードがあります。私は本当に左の機能が何をしているのかわかりません?vb left()関数をc#

If Left(cboLeng, 1) = "1" And Left(cboLeng, 1) = "2" And Left(cboLeng, 1) = "3" And Left(cboLeng, 1) = "4" And Left(cboLeng, 1) = "5" And Left(cboLeng, 1) = "6" And Left(cboLeng, 1) = "7" And Left(cboLeng, 1) = "8" And Left(cboLeng, 1) = "9" Then 
     Leng = "L" & cboLeng.Text 
    Else 
     Leng = cboLeng.Text 
    End If 
+3

:?私の推測では、のようなものになりたい本当にですかあなたはSOに投稿することができますが、 "VB Left"というGoogleにはアクセスできませんでしたか? – adelphus

+1

Google:VBは機能を残しました - 何百万という結果を返します –

+1

しかし、そのコードは意味をなさないでしょうか?私はVBを知らないのですが、最初の文字が任意の数( 'char.IsDigit(cboLeng [0])')ではなく、同時にすべての数値であるかどうかをテストしているようです。 – harold

答えて

4

(それは仕方によって、ここにあるものcboLengはっきりしていない - それは、文字列Textプロパティが含まれているタイプとして使用されているように見える詳しい情報が役立つだろう。 。

Left関数は最初の部分を取る)それ以外の場合は、単に文字列値を取得に一度Textプロパティを使用し、その上で動作 - - 。この答えの残りの部分は、それが文字列だと仮定しますが、そのコードは」doesnの意味をなさない

if (cboLeng.StartsWith("1") && cboLen.StartsWith("2") && ...) 
{ 
} 

文字列「2」と「1」スタートで始めることはできません:それは一種の相当です。

真剣
// TODO: Check for an empty string 
char firstChar = cboLeng[0]; 
if (firstChar >= '1' && firstChar <= '9') 
{ 
    Leng = "L" + cboLeng; 
} 
else 
{ 
    Leng = cboLeng; 
} 
+0

与えられたcboLengからの見た目は、コントロールではなく、文字列ではありません... –

+0

私にそれを打つ。 'char firstChar = cboLeng.Text [0];' – Matten

+1

@DavidM:私はそれを説明するために編集していました。提供されたコードは、正直なところ、いろいろな形で奇妙に見えます。 –

4

Leftは、指定された文字列の一番左の文字を取ります。 C#の同等の機能は、string.Substringによって提供されています。だからあなたのコードが起動します:

if (cboLeng.Text.Substring(0, 1) == "1"... 
+2

リンクをたどってドキュメントを読むことはできますか?それは非常に明確にそこに説明されています。 –

関連する問題