如何于DataGridView控件中以跨数据行方式显示数据

皇城影

皇城影

2016-01-29 12:27

如何于DataGridView控件中以跨数据行方式显示数据,如何于DataGridView控件中以跨数据行方式显示数据
 

一般来说,每一个字段的内容会单独显示于DataGridView控件的一个数据行中。问题是,某些字段拥有大量文字数据,我是不是能够让该字段的内容以跨数据行的方式来显示,以便在有限的画面空间中的呈现出更完整的内容呢?答案当然是肯定的。


以图表1所示的执行画面而言,「自传」字段的内容并未单独显示于一个数据行中,而是以横跨数据行的方式,显示在同笔数据列之各字段内容的下方。相关程序代码列示如下:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;



private int oldRowIndex = 0;
private const int CUSTOM_CONTENT_HEIGHT = 80;
private DataSet myDataSet;

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com)

private void CH13_DemoForm009_Load(object sender, EventArgs e)
{
    Padding newPadding = new Padding(0, 1, 0, CUSTOM_CONTENT_HEIGHT);
    this.DataGridView1.RowTemplate.DefaultCellStyle.Padding = newPadding;

    this.DataGridView1.RowTemplate.DefaultCellStyle.SelectionBackColor =
        Color.Transparent;

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com)

    this.DataGridView1.RowTemplate.Height += CUSTOM_CONTENT_HEIGHT;

    this.DataGridView1.AllowUserToAddRows = false;
    this.DataGridView1.EditMode = DataGridViewEditMode.EditOnKeystrokeOrF2;
    this.DataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.None;
    this.DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

    myDataSet = LoadDataToDataSet();

    if(myDataSet != null)
    {
        // 将 BindingSource 组件系结至数据集对象中的「飞狐工作室」数据表。
        this.BindingSource1.DataMember = "飞狐工作室";
        this.BindingSource1.DataSource = myDataSet;

        this.BindingSource1.AllowNew = false;

        // 将 BindingNavigator 控件的数据来源也设定成 BindingSource 组件
        //,如此一来,就可以使用 BindingNavigator 控件去导览
        // DataGridView 控件中的数据列。
        this.BindingNavigator1.BindingSource = this.BindingSource1;

        this.DataGridView1.DataSource = this.BindingSource1;
    }
    else
    {
        return;
    }

    this.DataGridView1.Columns[4].Visible = false;

    this.DataGridView1.Columns[0].SortMode =
         DataGridViewColumnSortMode.NotSortable;
    this.DataGridView1.Columns[2].SortMode =
         DataGridViewColumnSortMode.NotSortable;
    this.DataGridView1.Columns[3].SortMode =[next]
         DataGridViewColumnSortMode.NotSortable;

 

 


    this.DataGridView1.AutoResizeRows(
        DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders);
}

private void DataGridView1_ColumnWidthChanged(object sender,
                                         DataGridViewColumnEventArgs e)
{
    this.DataGridView1.Invalidate();
}

private void DataGridView1_CurrentCellChanged(object sender, EventArgs e)
{
    if(oldRowInd

展开更多 50%)
分享

猜你喜欢

如何于DataGridView控件中以跨数据行方式显示数据

电脑网络
如何于DataGridView控件中以跨数据行方式显示数据

3.4 使用数据绑定控件显示数据

Web开发
3.4 使用数据绑定控件显示数据

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

将数据库中的数据通过client控件显示 有源代码

ASP
将数据库中的数据通过client控件显示 有源代码

Acme包中的以Post方式发送数据的例子

编程语言 网络编程
Acme包中的以Post方式发送数据的例子

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

以独占方式打开Access数据库

电脑网络
以独占方式打开Access数据库

使用嵌套的Repeater控件显示分级数据

Web开发
使用嵌套的Repeater控件显示分级数据

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

《三剑豪》武当派使用小贴士

《三剑豪》武当派使用小贴士

使用::std::vector<>作为管理动态数组的优先选择

使用::std::vector<>作为管理动态数组的优先选择
下拉加载更多内容 ↓