asp.net DataGridView拷贝至剪贴板方法

作者:袖梨 2022-06-25

asp教程.net datagridview拷贝至剪贴板方法 

拷贝模式设定

 

datagridview1.clipboardcopymode= datagridviewclipboardcopymode.enablewithoutheadertext //设置可复制的模式

 

其中datagridview.clipboardcopymode 属性获取或设置一个值,该值指示用户是否可以将单元格的文本值复制到 clipboard,以及是否包括行标题和列标题文本。

 

命名空间: system.windows.forms

程序集: system.windows.forms(在 system.windows.forms.dll 中)

 

选中部分拷贝

 

clipboard.setdataobject(datagridview1.getclipboardcontent()) //将控件选中的数据置于系统剪贴板中

 

datagridview粘贴

 

代码

if (datagridview1.currentcell.value == null)

{

    return;

}

int insertrowindex = datagridview1.currentcell.rowindex;

string pastetext=clipboard.gettext();//从系统剪贴板中获取数据

if(string.isnullorempty(pastetext))

{

    return;

}

string[] lines=pastetext.split('r');//按行分组

bool isheader=true;

foreach(string line in lines)

{   

    if(isheader)

    {

        isheader=false;//当可复制模式中含有标题时的过滤操作

    }

    else

    {

        string[] vals=line.split('t');//按tab空格分组

        if (vals.length - 1 != datagridview1.columncount)

        {

            throw new applicationexception("列数错误");

        }

        datagridviewrow row = datagridview1.rows[insertrowindex];

        row.headercell.value=vals[0];

        for(int i=0;i

        {

            row.cells[i].value=vals[(i+1)];

        }

        insertrowindex+=1;

    }

}

 

 

九、datagridview自动编号

 

代码

 

private void datagridview1_rowpostpaint(object sender, datagridviewrowpostpainteventargs e)

        {

               //自动编号与数据库教程无关

            rectangle rectangle = new rectangle(e.rowbounds.location.x, e.rowbounds.location.y

,datagridview1.rowheaderswidth - 4,e.rowbounds.height);

 

            textrenderer.drawtext(e.graphics, (e.rowindex + 1).tostring(),datagridview1.

rowheadersdefaultcellstyle.font, rectangle,

            datagridview1.rowheadersdefaultcellstyle.forecolor, textformatflags.verticalcenter | textformatflags.right);

        }

 

显示行号

 

相关文章

精彩推荐