2011-12-08 5 views
0

私のデータベーステーブルには、varchar型のフィールドAcc.Noがあり、値は0005-02-888888, 0005-02-888889, 0005-03-888889, 0002-03-888889です。ドロップダウンリストに1つずつ分割して表示したいと考えています。どうすればいいですか?私はVS2008 Asp.net 3.5 Framework C#とSql Server 2005を使用しています。私は初心者ですが、どんな助けもappretiatedされます。 よろしく、ドロップダウンリストに値を表示する方法(例:0005-02-888888、0005-02-888889)?

+1

したがって、0005、02、888888のように3つのドロップダウンボックスが必要ですか? – TomTom

+0

@TomTom ....いいえ....私は1ドロップダウンリストが必要です。最初の項目は005-02-888888でなければならず、次に2番目の項目は0005-02-888889などです。 – sun

+0

どのような手順で助けが必要ですか?データベースからデータを取得していますか? C#を使用してデータを分割する?ドロップダウンに値を設定しますか? – c0deNinja

答えて

0

データ列から文字列配列を取得するにはちょうど

string[] data = accNos.Split(','); 

あなたは配列の値をクリーンアップすることがあります(たとえば、任意の先頭のスペースを)行く:

for (int i = 0; i < data.Length; i++) 
{ 
    data[i] = data[i].Trim(); 
} 

その後バインドデータをドロップダウンリストに追加

cmbAccounts.DataSource = data; 
cmbAccounts.DataBind(); 

または、BindingSo urceます。また、分割して1行にトリミングすることができ

bindingSource.DataSource = data; 
bindingSource.ResetBindings(false); 
+0

@tomfanning ...このエラーが発生しています。エラー引数 '1': '文字列'から 'char []'に変換できません。私のコードは\tです。string [] splitString = myString; – sun

+0

@ tobias86 ...ありがとう.. – sun

1

List<string> data = accNos.Split(',').Select(p => p.Trim()).ToList(); 

そして、あなたが好む場合はもちろん、あなたが、同様に1行にバインドすることができます。

bindingSource.DataSource = accNos.Split(',').Select(p => p.Trim()).ToList(); 
+0

もちろん、あなたはSystem.Linqを使う必要があります。あなたのページの上部にあります。 – Tys

関連する問題