..
W ASP.NET, liczba kontroli jest w stanie zrozumieć formy i treści z kolekcji i generowania odpowiednich tagów do jego reprezentowania. Wśród nich można wymienić, na przykład, listbox i DropDownList.
Jednym z najczęstszych problemów w rozwoju każdej aplikacji lub strony internetowej do reprezentowania kolekcje / zestawy elementów w odpowiednich interfejsów użytkownika (UI, User Interface). Uważamy, że jednym z wielu miejsc handlowych w Internecie. Po uzyskaniu dostępu do jednego z nich, jeśli kupujemy coś, czego zwykle wypełnić kartę, w której różne dane zazwyczaj jest ich narodu. To pole jest zwykle reprezentowane przez DropDownList, rozwijane menu, które pozwala przeglądać listę i wybrać jeden z narodów.
Zasadnicze jest pytanie, w jaki sposób kontrola ta jest wypełniona? Sterowanie tak (ale także listbox na przykład) prezentowanie kolekcji przedmioty, za pomocą których można dodawać elementy do listy. Wystarczy skorzystać z metody Items.Add
chronione PopolaDropDownList void (IList list)
{
for (int i = 0; i <lista.Count; i + +)
{
this.MiaDropDownList.Items.Add (lista [i]);
}
}
Jednak, jak można zrozumieć dodawanie elementów do ręcznego sterowania nie jest zalecany sposób w pewnych kontekstach (rozważyć, na przykład, zestawy elementów do wyświetlenia, które mogą się zmieniać w czasie) jest iz tego powodu, ASP.NET zawiera szereg kontrola łącza danych (data związana) zdolne do podejmowania kolekcje dokumentów i automatyczne generowanie znaczników do wyświetlania w nas (tak zwane wiązanie danych).
Każda z tych kontroli są odpowiednie właściwości do połączenia ze źródłem danych (źródło danych). W przypadku prostych wiązanie danych za pomocą właściwości DataSource, które można podłączyć do dowolnego zbioru / kolekcji, która implementuje IEnumerable, ICollection lub IListSource. Po nieruchomość jest ceniony, jak to możliwe, można powołać się na DataBind metody na stronie (lub kontroli) przekazuje kontrolę do iteracji kolekcji jest podłączony.
Kontroli, które obsługują tę funkcję są: ListControl, CheckBoxList, RadioButtonList, DropDownList, listbox, katalogów, menu, gridview, datagrid, repeater, FormView, DetailsView. Oczywiście, dla celów tego przewodnika nie będzie zbadanie właściwości każdej z nich i robić, co mi poprosić o konsultacje oficjalnej Microsoft.
Zobaczmy przykład użycia niektórych z tych kontroli. W Visual Studio utworzyć nową stronę i dodać do niej samochód klasy ma dwie właściwości, że marka i model, jak można się domyślać, będzie służyć jako zbiór marek i modeli samochodów.

Oto jego realizacji
publicznej samochodów klasy
{
publicznych Marka ciąg {get; zestaw;}
publicznych modelu ciąg {get; zestaw;}
publicznej samochodów (string strMarca,
strModello string)
{
this.Marca = strMarca;
this.Modello = strModello;
}
public static List <Auto> CreaListaAuto ()
{
Lista = new List <Auto> rozrzutny <Auto> ()
Samochodów saute;
sauté = new Car ("Lance", "Delta");
lAuto.Add (saute);
sauté = nowy samochód ("Fiat", "Punkt");
lAuto.Add (saute);
sauté = new Car ("Audi", "A4");
lAuto.Add (saute);
sauté = new Car ("Mercedes", "SLK");
lAuto.Add (saute);
sauté = new Car ("Ferrari", "F399");
lAuto.Add (saute);
sauté = new Car ("Forda", "Ford Kuga");
lAuto.Add (saute);
powrót obfite;
}
}
Dodaj nową formę internetowej o nazwie Default.aspx w naszym projekcie i włóż ją do czterech z kontroli, które widzieliśmy wcześniej, że jest listbox, DropDownList, RadioButtonList i CheckBoxList

Mamy ustawić właściwość AutoPostBack na wartość true dla wszystkich kontroli, tak aby wybranie pozycji do wygenerowania odświeżenie wydarzenie, podczas którego elementem może być kwestionowana. Wstawia również w dowolnym miejscu na stronie z etykietą, które będą przydatne później. Teraz musimy zmienić link do klasy strony, która zwraca kolekcję samochodów na różne kontrole. Dla każdej kontroli przez ustawienie właściwości DataTextField do pola modelu, tak aby modele samochodów pojawiają się w różnych kontroli. I ustawić właściwość DataValueField na obszarze Brand. Wreszcie w przypadku ładowania strony wstawić następujący kod, aby utworzyć kolekcję samochodów oraz jego związek z różnych kontroli
protected void Page_Load (object sender, EventArgs e)
{
if (! this.IsPostBack)
{
Lista <Auto> autolist Auto.CreaListaAuto = ();
this.ListBox1.DataSource autolist =;
this.DropDownList1.DataSource autolist =;
this.RadioButtonList1.DataSource autolist =;
this.CheckBoxList1.DataSource autolist =;
this.DataBind ();
}
}
Uruchamianie aplikacji jak pojawi się tutaj każdej kontroli




W tym momencie możemy podłączyć do zdarzenia SelectedIndexChanged różnych kontroli wskazują, jak dostęp do informacji o konkretnej marki samochodu. Ponieważ procedura jest podobna tylko dać przykład z listy. Tworzymy więc swoje zdarzenia SelectedIndexChanged i wstawić następujący kod wewnątrz
ListBox1_SelectedIndexChanged protected void (object sender, EventArgs e)
{
this.Label1.Text = this.ListBox1.SelectedValue;
}
W ten sposób widzimy, że poprzez uruchomienie programu poprzez wybór różnych modeli samochodów etykiecie zostanie zwiększona z odpowiednimi marki


| |
ASP (Advanced)
Pełny kurs tworzenia dynamicznych stron internetowych. Od 39 €. |
| |
ASP.NET (Kurs)
Pełny kurs do tworzenia aplikacji WWW od 49 €. |
| |
SQL i bazy danych (pole)
Tworzenie i zarządzanie relacyjnymi bazami danych. Od 39 €. |