c# tableLayoutPanel 合并单元格后出来多余的线怎么处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# tableLayoutPanel 合并单元格后出来多余的线怎么处理相关的知识,希望对你有一定的参考价值。

求高手指点迷津

请教参:
最简洁的方法,在要合并的单元格上添加一个Panel,将Panel的Dock属性设置为Fill、Margin属性设置为0,0,0,0即可。

欢迎追问。追问

哥们太神奇了,只能说我读书少了,成了

参考技术A 这个可以调整线条长度的吧?追问

不能啊

追答

我记得是可以的啊?那你等我回去的时候再去试吧。。。。到时候给你答案。

追问

等你啊

追答

你这个是Winform下面的?你试着改下GrowStyle这个属性试下吧,,实在不行你就直接自定义个表格控件吧。

C# 获取Excel中的合并单元格

C# 获取Excel中的合并单元格

我们在制作表格时,有时经常需要合并及取消合并一些单元格。在取消合并单元格时需要逐个查找及取消,比较麻烦。这里分享一个简单的方法来识别Excel中的合并单元格,识别这些合并单元格之后对这些单元格进行取消合并操作,还可以进行其他操作如设置格式等。

为了展示,这里我使用了一个模板Excel文件,它含有两个合并区域,如下图:

                    

代码使用:

步骤1实例化一个Workbook对象并加载Excel文档。

Workbook workbook = new Workbook();
workbook.LoadFromFile("测试.xlsx");

 

步骤2获取Excel文档的第一个工作表。

Worksheet sheet = workbook.Worksheets[0];

 

步骤3获取合并区域并将结果保存到一个CellRange 数组。

CellRange[] range = sheet.MergedCells;

 

步骤4遍历数组,将合并区域中的单元格取消合并。

foreach (CellRange cell in range)
{
    cell.UnMerge();
}

 

步骤5保存文档。

workbook.SaveToFile("输出.xlsx");

 

效果图:

 

完整代码:

using Spire.Xls;

namespace Detect_Merged_Cells
{
    class Program
    {
        static void Main(string[] args)
        {
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("测试.xlsx");

            Worksheet sheet = workbook.Worksheets[0];
 
            CellRange[] range = sheet.MergedCells;
            foreach (CellRange cell in range)
            {
                cell.UnMerge();
            }

            workbook.SaveToFile("输出.xlsx");
        }
    }
}

这里我使用了一个免费版Excel组件,可以看出这个方法很简单,只需要几行代码,感兴趣的朋友可以从NuGet下载:https://www.nuget.org/packages/FreeSpire.XLS/

以上是关于c# tableLayoutPanel 合并单元格后出来多余的线怎么处理的主要内容,如果未能解决你的问题,请参考以下文章

c# tableLayoutPanel 划分的每一行我无法拖动线改变其位置,为啥?

我无法将 ComboBox 停靠在 TableLayoutPanel 单元格中

c#导出EXCEL合并单元格代码

C语言中怎样让tablelayoutpanel中控件居中显示?

C#二维表头及单元格合并问题

C# 获取Excel中的合并单元格