..
I ASP.NET, har en række kontroller evnen til at forstå form og indhold af en samling og til at generere den korrekte koder til at repræsentere det samme. Blandt dem kan vi nævne, for eksempel, listbox og dropdownlist.
Et af de mest almindelige problemer i at udvikle software applikation eller website er at repræsentere samlinger / sæt af poster i passende brugergrænseflader (UI, User Interface). Vi tror, at en af de mange kommercielle websteder på internettet. Når du adgang til en af dem, hvis vi køber noget, vi plejer at udfylde et kort, hvor de forskellige data som regel er deres nation. Dette felt er som regel repræsenteret af en dropdownlist, en drop down menu, der giver dig mulighed for at se listen, og vælg en af de nationer.
Det grundlæggende spørgsmål er, hvordan denne kontrol er befolket? Controls som denne (men også listbox for eksempel) visning Elementer samling, hvor du kan føje punkter til listen. Bare bruge metoden Items.Add
protected void PopolaDropDownList (IList liste)
{
for (int i = 0; i <lista.Count; i + +)
{
this.MiaDropDownList.Items.Add (liste [i]);
}
}
Men som man kan forstå tilføjelsen af elementer til en manuel kontrol er ikke en anbefalet måde i visse sammenhænge (tænk for eksempel sæt af emner at vise, der kan ændre sig over tid), og af denne grund, omfatter ASP.NET en række datalink-kontrol (dato bundet) i stand til at gøre samlinger af genstande og automatisk generere tags til visning i vores sted (det såkaldte data bindende).
Hver af disse kontroller omfatte passende egenskaber til at oprette forbindelse til en datakilde (datakilde). For simple databinding bruger DataSource ejendom, som du kan oprette forbindelse til nogen samling / kollektion, der implementerer IEnumerable, ICollection eller IListSource. Når ejendommen er vurderet som muligt, kan du påberåbe sig DataBind metoden på siden (eller kontrol) til at instruere kontrol for at gentage indsamlingen er tilsluttet.
Controls, der understøtter denne funktion, er: ListControl, CheckBoxList, RadioButtonList, dropdownlist, listefeltet, trævisningen, menu, GridView, DataGrid, relæ, FormView, DetailsView. Det er klart, med henblik på denne guide vil vi ikke undersøge de særlige kendetegn ved hver af dem og gøre, hvad jeg beder dig om at konsultere den officielle Microsoft.
Lad os se et eksempel på at bruge nogle af disse kontroller. I Visual Studio oprette en ny hjemmeside og tilføje den en klasse bil har to egenskaber, der gør og model, som du kan gætte, vil tjene som en samling af mærker og modeller af biler.

Her er dens gennemførelse
public class Bil
{
public String Brand {få; sæt;}
public String Model {få; sæt;}
offentlige Car (streng strMarca,
strModello streng)
{
this.Marca = strMarca;
this.Modello = strModello;
}
public static List <Auto> CreaListaAuto ()
{
List = ny liste <Auto> overdådige <Auto> ();
Bil sauter;
sauter = ny bil ("Lance", "Delta");
lAuto.Add (sauter);
sauter = ny bil ("Fiat", "Point");
lAuto.Add (sauter);
sauter = ny bil ("Audi", "A4");
lAuto.Add (sauter);
sauter = ny bil ("Mercedes", "SLK");
lAuto.Add (sauter);
sauter = ny bil ("Ferrari", "F399");
lAuto.Add (sauter);
sauter = ny bil ("Ford", "Kuga");
lAuto.Add (sauter);
tilbage hjertelig;
}
}
Tilføj en ny web form kaldet Default.aspx i vores projekt og sæt det i fire af de kontroller, vi har set før, og det er en listbox, en dropdownlist, en RadioButtonList og CheckBoxList

Vi indstiller AutoPostBack ejendommen til sandt for alle kontroller, således at vælge et element til at generere en postback begivenhed, hvor elementet kan sættes spørgsmålstegn ved. Den indsætter også i enhver position på siden med en etiket, der vil være nyttige senere. Nu er vi nødt til at ændre linket til den side klasse, der returnerer samling af biler til forskellige kontroller. For hver kontrol ved at sætte DataTextField ejendom til den model område, så bilen modeller vises i forskellige kontroller. Og indstille DataValueField ejendommen på Brand-området. Endelig i belastningen tilfælde af den side indsætte følgende kode til at skabe samling af biler og for sit samarbejde med forskellige kontroller
protected void Page_Load (object sender, EventArgs e)
{
if (! this.IsPostBack)
{
Liste <Auto> autoList Auto.CreaListaAuto = ();
this.ListBox1.DataSource = autoList;
this.DropDownList1.DataSource = autoList;
this.RadioButtonList1.DataSource = autoList;
this.CheckBoxList1.DataSource = autoList;
this.DataBind ();
}
}
Lancering af programmet, da det vil blive vist her hver kontrol




På dette punkt kan vi oprette forbindelse til SelectedIndexChanged tilfælde af forskellige kontroller for at belyse, hvordan adgang til oplysninger om de specifikke bilmærke. Da proceduren svarer kun at lave et eksempel på listbox. Vi genererer så dens SelectedIndexChanged begivenhed og indsætte følgende kode inde
ListBox1_SelectedIndexChanged protected void (object sender, EventArgs e)
{
this.Label1.Text = this.ListBox1.SelectedValue;
}
På denne måde vil vi se, at ved at starte programmet ved at vælge de forskellige bilmodeller etiketten vil blive øget med det tilsvarende mærke


| |
ASP (Advanced)
Fuld kursus for at skabe dynamiske web-sites. Fra 39 €. |
| |
ASP.NET (Kursus)
Fuld kursus for bygge web-applikationer fra 49 €. |
| |
SQL-og Database (Kursus)
Oprette og administrere relationelle databaser. Fra 39 €. |