Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

1.4 - Bir liste üzerindeki farklı alanlar için editörler üzerinden arama kriterlerini yazarak arama yapılmasını sağlayan bir örnektir.

Tip

Aşağıda adımları gösterilen örnek projeyi MyFirstLowCodeApp_Release112023.rar linkinden indirebilirsiniz. (FilterInvoice.ldpf sayfası)

1.Veri kaynağına bağlı tablo kullanımı (GridDataGrid) dokümanı ile Grid 'in nasıl oluşturulduğu ve veri eklendiği incelebilir.

Ardından yeni bir ldp sayfasında ya da önceden oluşturulan Grid sayfasının üstüne filtrelemeyi sağlayacak aşağıdaki alanlar ve aksiyonları alacak butonlar eklenir.

Image RemovedImage Added

2. Listele butonu için bir event yaratılır. 

Image RemovedImage Added

Code Block
languagec#
linenumberstrue
private void LDPButton1_Click(LDP.Controls.UIContracts.Base.ILDPControl sender)
{
    var criteriaNCriteriaBuilder<Invoice> criteriaBuilder = NCriteriaBuilder<Invoice>.Where(Empty();
     if (LDPTextEdit1.Text.Assigned())
        criteriaBuilder = criteriaBuilder.And(s => s.InvoiceNumber.Contains(LDPTextEdit1.Text)).ToNCriteria();
     if (LDPDateTimeEdit1.DateTime.Assigned())
        criteriaBuilder = criteriaBuilder.And(s => s.InvoiceDate > LDPDateTimeEdit1.DateTime);
    LDPGrid1.Criteria = criteria if (LDPDateTimeEdit2.DateTime.Assigned())
        criteriaBuilder = criteriaBuilder.And(s => s.InvoiceDate < LDPDateTimeEdit2.DateTime);

      LDPGrid1.BindCriteria = criteriaBuilder.ToNCriteria();
      LDPGrid1.DataFirst = true;
}


3. Temizle butonu için de ikinci bir event oluşturularak ve kriter temizle kodu yazılır. 

Image RemovedImage Added

Code Block
languagec#
linenumberstrue
private void LDPButton2_Click(LDP.Controls.UIContracts.Base.ILDPControl sender)
{
   LDPGrid1.Criteria = null;
   LDPGrid1.Bind();
}


4. Proje çalıştırılır ve FilterInvoice sayfasında arama işlemleri aşağıdaki şekilde kontrol edilebilir.

Image Added