加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

关于如何打印ListView的解决方法

发布时间:2020-12-16 23:29:18 所属栏目:大数据 来源:网络整理
导读:ListView无外乎也是一个二维形式的,下面提供一个把ListView转换为二维数组。 ListView转换为二维数组 /// summary /// 将ListView的数据导出到二维数组。 /// /summary /// param name="listView"二维数据视图/param /// param name="includeColumnText"是

ListView无外乎也是一个二维形式的,下面提供一个把ListView转换为二维数组。

ListView转换为二维数组

/// <summary>
/// 将ListView的数据导出到二维数组。
/// </summary>
/// <param name="listView">二维数据视图</param>
/// <param name="includeColumnText">是否要把列标题文本也导到数组中。</param>
/// <remarks>
///<作者>长江支流</作者>
///<日期>2005-08-21</日期>
///<修改></修改>
/// </remarks>
/// <returns>二维数组。</returns>
public string[,] ToStringArray(ListView listView,bool includeColumnText)
{
ListView lvw = listView;
int rowsCount = lvw.Items.Count;
int colsCount = lvw.Columns.Count;

//包括列标题
if (includeColumnText)
{
rowsCount++;
}

string[,] arrReturn = null;

arrReturn = new string[rowsCount,colsCount];

int i = 0;

if (includeColumnText)
{
//写标题
for(i = 0 ; i < colsCount; i++)
{
arrReturn[0,i] = lvw.Columns[i].Text;
}

i = 1;
}

//写数据行Items
int rowIndex = 0;
for(; i < rowsCount; i++,rowIndex++)
{
for (int j = 0; j < colsCount; j++)
{
arrReturn[i,j] = lvw.Items[rowIndex].SubItems[j].Text;
}
}

return arrReturn;
}

打印ListView:

private void btnPrintEasy_Click(object sender,System.EventArgs e)
{
MisGoldPrinter webmis = new MisGoldPrinter();//打印组件
webmis.Title = "MIS金质打印通/nWWW.WebMIS.COM.CN";//网格标题
webmis.DataSource = ToStringArray(listView,true);//任意二维的数据通通打印
webmis.Preview();//打印预览
}

VB.Net:
Private Sub btnPrintEasy_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnPrintEasy.Click
Dim webmis As MisGoldPrinter'打印组件
webmis = New MisGoldPrinter
webmis.Title = "MIS金质打印通"+vbCrLf+"WWW.WebMIS.COM.CN"'网格标题 webmis.DataSource = ToStringArray(listView,true)'任意二维的数据通通打印 webmis.Preview() '打印预览End Sub

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读