如何复制复制ASP.NET GridView控件到剪贴板 [英] How to Copy copy ASP.NET GridView to clipboard

查看:555
本文介绍了如何复制复制ASP.NET GridView控件到剪贴板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有人有一个解决方案/链接的GridView / DataTable的复制内容(Web应用程序ASPX)到剪贴板,这样我可以在里面的Excel粘贴?

Does anyone have a solution/link for copying contents of a GridView/Datatable (web application aspx)to the clipboard, so that I can paste inside Excel?

我已经试过周围寻找,但只找到一个窗体的应用解决方案。

I've tried searching around but only found solutions for a Forms application.

推荐答案

下面是一些code来帮助你们走出与把网格视图的数据复制到剪贴板,它可以让你粘贴到Excel中。

Here's some code to help you guys out with putting a grid view's data into the clipboard, which lets you paste into Excel.

ClientScriptManager csm;
StringBuilder sb;
string stringToAppend;
int currentPage;

csm = Page.ClientScript;
sb = new StringBuilder();

// headers
foreach (DataControlField dcf in gvClass.Columns)
{
    sb.Append(dcf.HeaderText + "\t");
}

sb.Append("\\n");
currentPage = gvClass.PageIndex;

for (int i = 0; i < gvClass.PageCount; i++)
{
    gvClass_PageIndexChanging(null, new GridViewPageEventArgs(i));

    foreach (GridViewRow gvr in gvClass.Rows)
    {
        foreach (TableCell tc in gvr.Cells)
        {
            if (tc.Controls.Count > 0)
            {
                stringToAppend = ((LinkButton)tc.Controls[0]).Text;
                sb.Append(PRTL_UtilityPackage.FormatHtmlCharacters(stringToAppend) + " \t");
            }
            else
            {
                stringToAppend = tc.Text;
                sb.Append(PRTL_UtilityPackage.FormatHtmlCharacters(stringToAppend) + " \t");
            }   
        }
        sb.Append("\\n");
    }
}

gvClass_PageIndexChanging(null, new GridViewPageEventArgs(currentPage));

// Javascript that sets the clipboard to the stringbuilders value
csm.RegisterClientScriptBlock(typeof(Page), "copy",
"<script language=\"javascript\" type=\"text/javascript\"> " +
"window.clipboardData.setData(\"Text\", \"" + sb.ToString() + "\"); " +
"</script>");

这篇关于如何复制复制ASP.NET GridView控件到剪贴板的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆