نوشته شده توسط
Mahmoud.Afrad
رویداد FilterChanged را هم ایجاد کردید؟ کد کاملتری بزارید.
اینم کد های کامل
private void btnPrint_Click(object sender, EventArgs e)
{
StiReport s = new StiReport();
s.Load("Reports\\ShahrebaziReport.mrt");
s.Compile();
// s.RegData("DataSource1", Dt);
s.RegData("Shahrebazi",table);
s.Show();
}
private void dgv1_FilterChanged(object sender, GridViewCollectionChangedEventArgs e)
{
if (e.Action == NotifyCollectionChangedAction.Add || e.Action == NotifyCollectionChangedAction.ItemChanged)
{
table.DefaultView.RowFilter = this.dgv1.FilterDescriptors.Expression;
}
if (e.Action == NotifyCollectionChangedAction.Remove)
{
table.DefaultView.RowFilter = "";
}
}
private void Fill()
{
foreach (Telerik.WinControls.UI.GridViewDataColumn column in dgv1.Columns)
{
table.Columns.Add(column.Name, typeof(string));
}
for (int i = 0; i < dgv1.Rows.Count - 1; i++)
{
table.Rows.Add();
for (int j = 0; j < dgv1.Columns.Count; j++)
{
table.Rows[i][j] = dgv1.Rows[i].Cells[j].Value.ToString();
}
}
this.dgv1.DataSource = table;
this.dgv1.EnableFiltering = true;
this.dgv1.FilterChanged += dgv1_FilterChanged;
}