• 02-10-2012, 11:38:10
    #1
    Merhaba arkadaşlar,
    elimde bir listview var.veritabanından veriler listeliyorum bu listviewe, her satırın yanındada bir güncelle butonu bulunuyor.
    Birde ayrı bir sayfada formview kullanarak form oluşturdum.
    şimdi sorunuma gelince, listviewdeki güncelle butonuna bastığımda diğer aspx sayfasındaki formviewe tıkladığın satırdaki bilgileri getirsin istiyorum.Ama aralarındaki ilişkiyi bir türlü çözmedim.
    Elinde kaynak kod olan, yada örnek kodlarla işin mantığını gösterebilecek arkadaşlar varmıdır?
  • 02-10-2012, 13:19:05
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Listview'da bulunan butona o satırın id'sini ver. Yani atıyorum o satırın id'si 5 (veritabanındaki id değeri) ise yönlendirdiğin sayfada querystring'e yazdır veya session'da tut. En iyi yol querystring'e yazmaktır. Örnek: /deneme.aspx?id=5
    Sonra o sayfada querystring ile gelen değeri alıp veritabanında o id değerine denk gelen veriyi alıcaksın ve yazdıracaksın. Güncelleme yaparkende aynı id'yi kullanırsın.
  • 02-10-2012, 17:02:36
    #3
    cevabın için saol hocam.formviewde datasource oluşturduktan sonra textboxlara otomatik bind kullanarak direk verileri çekiyordum.burda nasıl yapıcaz peki bu işlemi?
  • 02-10-2012, 21:25:29
    #4
    Formview'a ihtiyacın yok aslında.
    Eğer button ise zaten itemcommand yapman gerek.
    <asp:Button id="btnEdit" runat="server" commandname="edit" commandargument='<%#Eval("id") %>'></asp:Button>
    Bu şekilde yazdıktan sonra listview'ın itemcommand event'ında direk kullanabilirsin.
    protected void listview_OnItemCommand(object sender, ListViewCommandEventArgs e)
    {
     if(e.commandname == "edit")
     {
        if(e.commandargument != null)
        {
           // bu kısımda istediğin gibi kullan id'yi.
           // string id = e.commandargument.tostring();
        }
     }
    }
    Eğer button değilde ben direk link koyayım oraya querystring ile alayım diyorsan şu şekilde en kolay yoldan yaparsın.
    <a href='/edit.aspx?id=<% #Eval("id") %>' title="edit" target="_blank">edit</a>
  • 02-10-2012, 21:46:26
    #5
    aslında listviewde listelenen verilerin yanlarında güncelle butonu var.Bu butona tıklandığında formview elemanının bulunduğu başka bir sayfaya gidecek.klasik aspde bildiğim için çok kolay ama .net te bi türlü kavrayamadım mantığını.internette bakmadığım yer kalmadı neredeyse ama çok sık kullanıldığını tahmin ettiğim bir durumu anlatan kimseye rastlamadım makalelerde vb yerlerde.listviewdeki listelenen verilerin yanındaki butona tıklayınca, ilgili idye sahip veri diğer sayfadaki formviewdeki forma gidecek ve o form üzerinde güncelleme işlemi yapılacak.bu şekilde bir çalışma lazım.
  • 02-10-2012, 22:27:30
    #6
    Sen kodunu koy buraya çözelim hemen.
  • 04-10-2012, 09:21:21
    #7
    teşekkür ederim yardımların için.sorunu hallettim yazdıklarınla.