C#DataGridView使用行和列作为标题

时间:2016-10-27 09:46:31

标签: c# database visual-studio datagridview designer

我已连接到数据库。我创建了一个DataViewGrid,它使用该数据库中的数据绑定。 我想使用行和列作为标题,现在不知何故只有列作为标题。 我正在使用Visual Studio 15并希望使用Designer。 有没有人这样做过?或者知道一个更好的Windows.Form用于创建表,它连接到数据库并在行和列侧有标题?

提前谢谢

2 个答案:

答案 0 :(得分:3)

您的要求不是很清楚,但我想您要自定义行标题和列标题。 dataGridView可能是在Windows窗体中查看数据的最佳控件之一。我将展示如何做以下典型要求;

  1. 在标题案例或大写案例
  2. 中显示列标题
  3. 自定义列标题特定名称
  4. 在行标题上显示行号
  5. 以下代码在C#

    //Show Columns in Title, Lower(textInfo.ToLowerCase) or Upper case textInfo.ToUpperCase
        System.Globalization.TextInfo textInfo = new System.Globalization.CultureInfo("en-US", false).TextInfo;
        foreach (DataGridViewColumn col in dataGridView.Columns)
        {
            col.HeaderText = textInfo.ToTitleCase(col.HeaderText);
        }
    
    //Customize specific column headers, using name or column index 
        dataGridView.Columns["number"].HeaderText = "No.";
        dataGridView.Columns["quantity"].HeaderText = "Product Quantity";
        dataGridView.Columns[0].HeaderText = "Code";    
    
    //Set Row headers with numbers   
        int rowNumber = 1;
        foreach (DataGridViewRow row in dataGridView.Rows)
        {
            if (row.IsNewRow) continue;
            row.HeaderCell.Value = "Row " + rowNumber;
            rowNumber = rowNumber + 1;
        }
        dataGridView.AutoResizeRowHeadersWidth(
        DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);
    

    Reference

答案 1 :(得分:0)

像DevExpress PivotGrid这样的Thirdparty网格可以让你做某事。像这样。据我所知,基本的dataGridView无法呈现RowHeader。您可以为DataSource创建一个自定义列,该列包含RowHeader信息并将其显示为第一列。如果你修改第一列布局,它看起来像RowHeader。这将是我用基本dataGridView知道的唯一技巧。