2017-09-20 9 views
0

私はプログラムで最後の60日間の日付(現在+59日前)で埋められたドロップダウンリストを持っています。私がしたいのは、ドロップダウンの値がyyyy-MM-ddの形式になり、ドロップダウンのテキストが例えば:Sat、201 2 Feb 23(形式: "ddd、dd-MM- yyyy ")。ドロップダウンリストのテキストを値のバリエーションとして表示asp.net c#

私はそれらを両方とも取得できますが、バリエーションの作成方法を理解することはできません。

私はこれに正しい方法で近づいていますか?あなたが与えることができるポインタはすばらしいでしょう!

C#でドロップダウンを移入するために私のコードは次のとおりです。として

List<ListItem> dateItems = new List<ListItem>(); 
    for (int i = 0; i < 60; i++) 
    { 
     dateItems.Add(new ListItem(DateTime.Now.AddDays(-i).ToString(format: "ddd, dd-MM-yyyy"))); 
    } 
    recDate.DataSource = dateItems; 
    recDate.DataBind(); 

    recDate.Items[0].Selected = true; 

、現在はそれがレンダリングされたHTMLで表示されます。

<option value="Mon, 18-09-2017">Mon, 18-09-2017</option> 

答えて

0

パズルの欠けている部分がありました:

WIN! :-)

1

代わりthis constructorを使用することができます。

List<ListItem> dateItems = new List<ListItem>(); 
for (int i = 0; i < 60; i++) 
{ 
    var date = DateTime.Now.AddDays(-i); 
    dateItems.Add(new ListItem(date.ToString("ddd, dd-MM-yyyy"), date.ToString("yyyy-MM-dd"))); 
} 
recDate.DataSource = dateItems; 
recDate.DataBind(); 

recDate.Items[0].Selected = true; 
+0

お返事ありがとうCamilo!私はあなたがレイアウトしたコンストラクタを理解していますが、何らかの理由でコンマの後の部分を無視しているようです。すべてのアイデア? :-S – cloudseeker

+0

@cloudseeker「カンマの後の部分を無視する」という意味のスクリーンショット/エラーメッセージを追加できますか? –

+0

エラーを投げているわけではありません。後続の値フォーマットの要求を無視しているだけです。コードはそのままで、例: ''のように表示されているので、** date.ToString( "yyyy-MM-dd"))**しかし、その理由はわかりません。 – cloudseeker

関連する問題