可以再加一个窗体提供选择要导出的字段 点击该窗体的Button才真正导出数据代码与楼上相似
这是选择字段的那个窗体的代码,好好研究一下:
public partial class SelectToPDFOrExcel : Form
{
public SelectToPDFOrExcel(DataGridView dgv)
{
InitializeComponent();
Dgv = dgv;
listInt = new List<int>();
}
private DataGridView Dgv;
public List<int> listInt { get; set; }
private void SelectToPDFOrExcel_Load(object sender, EventArgs e)
{
try
{
if (Dgv.Columns[0].HeaderText == "操作")
{
for (int i = 1; i < Dgv.Columns.Count; i++)
{
listTwo.Items.Add(Dgv.Columns[i].HeaderText);
}
}
else
{
for (int i = 0; i < Dgv.Columns.Count; i++)
{
listTwo.Items.Add(Dgv.Columns[i].HeaderText);
}
}
}
catch (Exception ex)
{
return;
}
}
private void btnRemove_Click(object sender, EventArgs e)
{
try
{
string selectvalue = listTwo.Text;
if (listTwo.Text == "")
{
MessageBox.Show("选择需要移除的项!","提示");
return;
}
listTwo.Items.RemoveAt(listTwo.SelectedIndex);
listOne.Items.Add(selectvalue);
}
catch (Exception ex)
{
return;
}
}
private void btnAdd_Click(object sender, EventArgs e)
{
try
{
string selectvalue = listOne.Text;
if (listOne.Text == "")
{
MessageBox.Show("选择需要添加的项!","提示");
return;
}
listOne.Items.RemoveAt(listOne.SelectedIndex);
listTwo.Items.Add(selectvalue);
}
catch (Exception ex)
{
return;
}
}
private void btnOut_Click(object sender, EventArgs e)
{
try
{
if (listTwo.Items == null || listTwo.Items.Count == 0)
{
MessageBox.Show("请选择需要导出的字段!","提示");
return;
}
for (int i = 0; i < Dgv.Columns.Count; i++)
{
for (int j = 0; j < listTwo.Items.Count; j++)
{
if (Dgv.Columns[i].HeaderText == listTwo.Items[j].ToString())
{
listInt.Add(i);
}
}
}
this.Close();
}
catch (Exception ex)
{
return;
}
}
private void SelectToPDFOrExcel_KeyDown(object sender, KeyEventArgs e)
{
try
{
if (e.KeyValue == 13)
{
if (listTwo.Items == null || listTwo.Items.Count == 0)
{
MessageBox.Show("请选择需要导出的字段!","提示");
return;
}
for (int i = 0; i < Dgv.Columns.Count; i++)
{
for (int j = 0; j < listTwo.Items.Count; j++)
{
if (Dgv.Columns[i].HeaderText == listTwo.Items[j].ToString())
{
listInt.Add(i);
}
}
}
this.Close();
}
}
catch (Exception ex)
{
return;
}
}
private void SelectToPDFOrExcel_FormClosed(object sender, FormClosedEventArgs e)
{
this.Close();
}
}
温馨提示:答案为网友推荐,仅供参考