Asp.Net
02
Tem
2011
Mvc Razor DropDownList
Kategori : MvcRazor
Ekleyen : Zekeriya ALAN
Selamlar, Arkadaşlar bu makalemde Mvc 3 Razor ile DropDownList Oluşturulup verilerimizi oluşan DropDownList'e yüklemeyi öğreneceğiz. Yeni Bir proje oluşturuyoruz. İlk etapta Models klasörümüzün içine DDL içinde göstereceğimiz elemanları tutan Kategoriler isminde bir sınıf oluşturuyoruz. Daha önce Mvc Projesi oluşturmadıysanız. Buradan inceleyebilirsiniz.
Kategoriler.cs sınıfındaki kodlarımız.
   1:  public class Kategoriler
   2:  {
   3:      public int kategoriId { get; set; }
   4:      public string kategoriName { get; set; }
   5:  }
Sınıfımıza iki özellik tanımladık. kategoriId ve KategoriName. Şimdi sıra geldi Controllers sınıfımızı oluşturmaya. Projemizdeki Controllers klasörüne sağ tıklıyoruz. Add -> Controller'ı seçiyoruz ve HomeController ismini veriyoruz. HomeController.cs sayfamızda üst kısımda daha önceden oluşturduğumuz Kategoriler sınıfını referans olarak göstermeyi unutmuyoruz. using DropDownRazor.Models; DropDownRazor yazan kısım projenin Namespace idir. Siz projenizi hangi isimle oluşturduysaniz o şekilde kullanacaksınız. Namespace.Model
HomeController.cs sınıfındaki kodlarımız.
   1:  public class HomeController : Controller
   2:      {
   3:          public ActionResult Index()
   4:          {
   5:              // Kategori listesi Oluşturuyoruz.
   6:              List<Kategoriler> kategoriList = new List<Kategoriler> 
   7:              {
   8:                  new Kategoriler(){ kategoriId=1, kategoriName="Cd"},
   9:                  new Kategoriler(){ kategoriId=2, kategoriName="Dvd"},
  10:                  new Kategoriler(){ kategoriId=3, kategoriName="Müzik"},
  11:              };
  12:              /*  Oluşan kategori listesinden, linq sorgusu ile kategori 
  13:                  adlarını ve idlerini sayfamızda oluşturduğumuz dropdown 
  14:                  nesnesi üzerine alıyoruz. */
  15:              IEnumerable<SelectListItem> list = from k in kategoriList
  16:                         select new SelectListItem
  17:                         {
  18:                             Value = k.kategoriId.ToString(),
  19:                             Text = k.kategoriName,
  20:                         };
  21:   
  22:              ViewData["dropdown"] = list;
  23:              return View();
  24:          }
  25:      }
DropDownList'imizi oluşturmaya geçebiliriz. HomeController sınıfında bulunan public ActionResult Index() içinde sağ tıklayıp -> Add View i seçiyoruz. MasterPage seçimi yapacağımız bölümden _Layout.cshtml 'yi seçiyoruz.
Index.cshtml sınıfındaki kodlarımız.
   1:  @{
   2:      ViewBag.Title = "Index";
   3:      Layout = "~/Views/Shared/_Layout.cshtml";
   4:  }
   5:  @Html.DropDownList("dropdown", "-- seçim yapınız --")
Sayfamız hazır, Projemizi Çalıştırıyoruz.

Başka Makalelerde görüşmek dileğiyle hoşçakalın..

05 Ekim Çar, 2011 Sibel BEYAZ
peki post back, yani dropdownlist'de bir eleman seçildiğin mesala label'ın rengini kırmızı yapmak istesek nasıl yapabiliriz?
05 Ekim Çar, 2011 Zekeriya ALAN
Selamlar jQuery Kullanarak istediğinizi çok basit bir şekilde halledebilirsiniz. Küçük bir örnekle açıklıyorum.
<script language="javascript" type="text/javascript">
    $(document).ready(function () {
        $('#dropdownlist').change(function () {
            alert('secildi.');
        });
    });
</script>

@Html.DropDownList("dropdownlist", new[] {
    new SelectListItem{ Text="Seçim yapınız", Value="0" },
    new SelectListItem{ Text= "Renk Değiştir", Value="1" }
})
Saygılar.
06 Ekim Per, 2011 Sibel BEYAZ
Teşekkürler!..:)
06 Ekim Per, 2011 Sibel BEYAZ
Ben bir şey daha sormak istiyorum, bu kodun çalışmamasının nedeni sayfanın en başında yerel alan Model grubuna ait BolumC'nin olmasından mı kaynaklı?
06 Ekim Per, 2011 Admin
Model ile alakalı bir problem değil, verilerinizi json olarak göndermeyide deneyebilirsiniz. linkini verdiğim makalede işinize yarayacak bir örnek mevcut inceleye bilirsiniz.
iyi çalışmalar dilerim.
28 Aralık Çar, 2011 sevan
üstad çok güzel açıklayıcı bir anlatım çok teşekkürler bilginizi paylaştığınız için.
28 Aralık Çar, 2011 Admin
Ben teşekkürederim, faydam dokunduysa ne mutlu bana.
14 Nisan Cmt, 2012 ali sayin
selam, peki dropdownlist ten seçtiğimiz id ye göre veritabanından veri nasıl listeleyebiliriz.
15 Nisan Paz, 2012 Admin
Selam, istediğinizi yapmanın en kolay yolu, yine bloğumda bulunan Mvc 3 Json makalesini okumaktan geçiyor. 2 makaleyi yorumladığınızda gerekli sonuca ulaşabilirsiniz.
03 Temmuz Sal, 2012 hasan sert
Merhabalar, diyelim ki uye kaydı yapacağım dropdown listen cinsiyet secilecek textboxlarda adını emailini falan girecek bu durumda ne yapmam lazım?sizin örneklerde hep tek control var.Birtavsiyeniz var mı?normal asp.net de buton altına kod yazıp uye nesnesinin propertylerini set edilip uye.kayit() diyoruz mvc de nasıl olacak?Teşekurler
15 Temmuz Paz, 2012 Admin
Mvc'de üye nesnesinin kendisini kullanıyorsunuz.
   1:  <%using (Html.BeginForm()) {%>
   2:  <input ..
   3:  <select ...
   4:  <input type="submit" ...
   5:  <% } %>
   6:   
   7:  [HttpPost]
   8:  public ActionResult UyeKayit(UyeSinifi uye)
   9:  {
  10:  UyeSinifi u = new UyeSinifi()
  11:  {
  12:  uyeAdi = uye.uyeAdi,
  13:  email = uye.email,
  14:  };
  15:  // kayıt kodları.
  16:  return View();
  17:  }
11 Aralık Çar, 2013 Fuat Arre
hocam ipek gibi bir makale olmuş kutlarım.. devamını bekleriz bunların.. özellikle mvc razor insert update delete işlemlerini.. senin sade anlatımınla.. teşekkürler..