nobody 发表于 2015-8-27 00:34:45

为什么合并此表?

出于某些原因,这将创建一个合并了单元格的表。有人知道我怎么修吗
使用Autodesk.AutoCAD.ApplicationServices
使用Autodesk.AutoCAD.DatabaseServices
使用Autodesk.AutoCAD.EditorInput
使用Autodesk.AutoCAD.Geometry
使用Autodesk.AutoCAD.Runtime
名称空间表tuff
{
公共类CreateTable
{
静态公共void CreateMyTable(Point3d mypoint)
{
Document doc=Application.DocumentManager.MdiActiveDocument
数据库db=doc.Database
编辑器ed=doc.Editor
表tb=new Table()
tb。TableStyle=db.TableStyle
tb。设置大小(1,5)
tb.SetRowHeight(3)
tb.SetColumnWidth(3)
tb。位置=mypoint
//创建二维数组
//我们的目录
字符串[,]str=新字符串
str=“Column1”
str=“Column2”
str=“Column3”
str=“Column4”
str=“Column5”
//使用嵌套循环添加每个单元格并设置其格式。
用于(int i=0;i
{
用于(int j=0;j
{
tb。细胞。TextHeight=1
tb。细胞。TextString=str
tb。细胞。对齐=CellAlignment.MiddleCenter
}
}
tb.GenerateLayout()
事务tr=doc.TransactionManager.StartTransaction()
使用(tr)
{
BlockTable bt=(BlockTable)tr.GetObject(doc.Database.BlockTableId,OpenMode.ForRead)
BlockTableRecord btr=(BlockTableRecord)tr.GetObject(bt,OpenMode.ForWrite)
btr.AppendEntity(tb)
tr.addNewlyCreatedBobObject(tb,true)
tr.Commit()
}
}
}
}
**** Hidden Message *****

MexicanCustard 发表于 2015-8-27 07:42:26

我在代码中没有看到向表tb.InsertColumns()添加新列的任何地方。

Master_Shake 发表于 2015-8-27 08:22:04

我想问题是tb.SetSize,如果你使用tb.NumRows和tb.NumColumns?

Jeff_M 发表于 2015-8-27 11:41:52

您正在创建一个只有一行的表。您的Tablestyle被设置为具有标题并合并标题行中的单元格。将表格更改为2行,并将标题赋予第一个单元格。在填写各列时,请务必将I的值调整为i-1。

nobody 发表于 2015-8-27 12:02:31

谢谢你。
页: [1]
查看完整版本: 为什么合并此表?