meysamkarimi
چهارشنبه 01 مهر 1388, 22:47 عصر
ابتدا فضای نام System.IO را به برنامه اضافه کنید.
حال متد زیر را در برنامه فراخوانی کنید تنها کافی است نام کنترل ListView را به متد بفرستید. البته باید خاصیت View کنترل لیستویو در حالت Details باشد.
void ExportToExcel(ListView lstView)
{
SaveFileDialog DlgSaveExcel = new SaveFileDialog();
DlgSaveExcel.DefaultExt = "csv";
DlgSaveExcel.Filter = "csv files (*.csv)|*.csv";
if (DlgSaveExcel.ShowDialog() == DialogResult.OK)
{
Stream myStream;
byte[] info = null;
string ExportExcel = string.Empty;
if ((myStream = DlgSaveExcel.OpenFile()) != null)
{
foreach (ColumnHeader Curr in lstView.Columns)
{
ExportExcel += Curr.Text.Replace(";", "") + ";";
}
ExportExcel += "\n";
foreach (ListViewItem Item in lstView.Items)
{
foreach (ListViewItem.ListViewSubItem SubItem in Item.SubItems)
{
ExportExcel += SubItem.Text.Replace(";", "") + ";";
}
ExportExcel += "\n";
}
info = new UTF8Encoding(true).GetBytes(ExportExcel);
myStream.Write(info, 0, info.Length);
myStream.Close();
}
}
}
حال متد زیر را در برنامه فراخوانی کنید تنها کافی است نام کنترل ListView را به متد بفرستید. البته باید خاصیت View کنترل لیستویو در حالت Details باشد.
void ExportToExcel(ListView lstView)
{
SaveFileDialog DlgSaveExcel = new SaveFileDialog();
DlgSaveExcel.DefaultExt = "csv";
DlgSaveExcel.Filter = "csv files (*.csv)|*.csv";
if (DlgSaveExcel.ShowDialog() == DialogResult.OK)
{
Stream myStream;
byte[] info = null;
string ExportExcel = string.Empty;
if ((myStream = DlgSaveExcel.OpenFile()) != null)
{
foreach (ColumnHeader Curr in lstView.Columns)
{
ExportExcel += Curr.Text.Replace(";", "") + ";";
}
ExportExcel += "\n";
foreach (ListViewItem Item in lstView.Items)
{
foreach (ListViewItem.ListViewSubItem SubItem in Item.SubItems)
{
ExportExcel += SubItem.Text.Replace(";", "") + ";";
}
ExportExcel += "\n";
}
info = new UTF8Encoding(true).GetBytes(ExportExcel);
myStream.Write(info, 0, info.Length);
myStream.Close();
}
}
}