..


スポンサーリンク

データバインディング

ASP.NETで、コントロールの数は、コレクションの形式と内容を理解し、同じを表すために適切なタグを生成する機能を備えています。 その中で私達は、たとえば、ListBoxおよびDropDownListを挙げることができる。

任意のソフトウェアアプリケーションまたはWebサイトを開発する上で最も一般的な問題の一つは、適切なユーザーインターフェース(UI、ユーザーインターフェイス)のコレクション/項目のセットを表すことです。 我々は、ウェブ上で多くの商用サイトのいずれかを思う。 我々は何を買えば、それらのいずれかにアクセスするときに我々は通常、様々なデータが、通常、その国になっている、カードに必要事項を記入してください。 このフィールドは通常、DropDownListコントロール、リストを表示し、国のいずれかを選択できるようにするドロップダウンメニューで表されます。

根本的な疑問は、このコントロールにデータが入力される方法です? あなたがリストにアイテムを追加できるようなアイテムのコレクションを表示、このようなコントロール(だけでなく、たとえば、リストボックス)。 単にメソッドするItems.Addを使用






保護されたボイドPopolaDropDownList(IListのリスト)







 {

 

  



 (; I <lista.Countのは、i + + int型私= 0)のための

 

  



 {

 

    



 this.MiaDropDownList.Items.Add(リスト[i]の);

 

  



 }







 }



しかし、人は手動制御に要素の追加が、特定の状況で推奨される方法ではないことを理解できるように(時間の経過とともに変更される場合があることを表示するには、例えば、アイテムのセットを考慮)、この理由のために、ASP.NETには、番号が含まれています項目のコレクションを作ることができると自動的に私達の場所に表示(いわゆるデータバインディング)のためのタグを生成するデータリンクコントロール(バインドされた日付)。

これらの各コントロールは、データソース(データソース)に接続するための適切なプロパティが含まれています。 あなたがIEnumerable、ICollectionをまたはIListSourceを実装する任意のコレクション/コレクションに接続できるDataSourceプロパティを、使用して単純なデータバインディングのため。 プロパティは、可能な限り高く評価された後は、コレクションが接続されている反復に制御を指示するページ(またはコントロール)のDataBindメソッドを呼び出すことができます。

この機能をサポートするコントロールは以下のとおりです。ListControlのは、CheckBoxList、RadioButtonListの、DropDownListコントロール、リストボックス、ツリービュー、メニュー、グリッドビュー、データグリッド、リピータ、FormViewコントロールは、DetailsView。 明らかに、このガイドの目的のために我々は、私はあなたがマイクロソフトの公式を参照するように依頼何、それらのそれぞれの特性を調査して行うことはありません。

これらのコントロールのいくつかの使用例を見てみましょう。 Visual Studioで新しいWebサイトを作成し、そこにクラスの車を追加して作成し、モデル2つのプロパティを持つ、ご想像のとおり、車のメーカー名とモデル名のコレクションとして機能します。

ここでその実装は、






パブリッククラスの車







 {



  



公共の文字列のブランド{取得または設定します。}



  



公共の文字列のモデル{取得または設定します。}





  



公共駐車場(文字列strMarca、



  



 strModello文字列)



  



 {



      



 this.Marca = strMarca;



      



 this.Modello = strModello;



  



 }



    

  



公共の静的なリスト<auto>のCreaListaAuto()



  



 {



    



リスト=新しいリスト<auto>の豪華な<auto>の();



        

    



車ソテー;



        

    



 =新しい車を("ランス"、"デルタ")ソテー。



    



 lAuto.Add(ソテー);



        

    



 =新しい車を("フィアット"、"ポイント")ソテー。



    



 lAuto.Add(ソテー);



        

    



 =新しい車を("アウディ"、"A4")ソテー。



    



 lAuto.Add(ソテー);



        

    



 =新しい車を("メルセデス"、"SLK")ソテー。



    



 lAuto.Add(ソテー);



        

    



 =新しい車を("フェラーリ"、"F399")ソテー。



    



 lAuto.Add(ソテー);



        

    



 =新しい車を("フォード"、"久我")ソテー。



    



 lAuto.Add(ソテー);



        

    



心のこもった返します。



  



 }







 }



私たちのプロジェクトにDefault.aspxという名前の新しいWebフォームを追加し、我々が前に見たコントロールの4つに挿入し、そしてそれは、リストボックス、DropDownListコントロール、RadioButtonListとCheckBoxListです。

我々は、すべてのコントロールでAutoPostBackプロパティをtrueに設定するので、その要素が問われることができる時にポストバックイベントを生成する項目を選択する。 後で役に立つことをラベルとページ上の任意の位置にも挿入。 今、私たちはさまざまなコントロールに車のコレクションを返すページのクラスへのリンクを変更する必要があります。 カーモデルはさまざまなコントロールに表示されるように、モデルのフィールドにDataTextFieldプロパティを設定することにより、各コントロールの。 とブランドエリアにDataValueFieldプロパティを設定します。 最後に、車のコレクションを作成するには、次のコードの挿入ページのLoadイベントにとさまざまなコントロールとの関連付けのための






保護されたボイドをPage_Load(オブジェクト送信者、EventArgs e)







 {



  



するif(!this.IsPostBack)



  



 {



    



リスト<auto>のautoList Auto.CreaListaAuto =();



    



 = autoListをthis.ListBox1.DataSource。



    



 = autoListをthis.DropDownList1.DataSource。



    



 = autoListをthis.RadioButtonList1.DataSource。



    



 = autoListをthis.CheckBoxList1.DataSource。



    



 this.DataBind();



  



 }







 }



それはここで各コントロールを表示されるようにアプリケーションを起動

この時点で我々は車の特定の製造元に関する情報にアクセスする方法を強調するためにさまざまなコントロールのSelectedIndexChangedイベントに接続することができます。 手順は、リストボックスの例を作成するだけ似ていますので。 我々は、そう、そのSelectedIndexChangedイベントを生成し、内部に次のコードを挿入






 ListBox1_SelectedIndexChanged保護されたボイド(オブジェクトの送信者、EventArgs e)







 {



  



 this.Label1.Text = this.ListBox1.SelectedValue;







 }



この方法では、さまざまな車種を選択してアプリケーションを起動することによって、ラベルが対応するブランドで強化されることがわかります

Visual StudioでASP.Netで役立つ
E -ラーニング
ASP(上級) ASP(上級)
動的なWebサイトを作成するためのフルコース。 39€から。
ASP.NET(コース) ASP.NET(コース)
49€からWebアプリケーションを構築するためのフルコース。
SQLとデータベース(コース) SQLとデータベース(コース)
リレーショナルデータベースを作成および管理。 39€から。
スポンサーリンク