C#:通用方法总结—第4集

大家好,今天接着写我们的通用方法总结分享。

下面是今天要分享的通用方法:

(1)通过输入信息,返回合并的单元格内容。这个方法比较好用,适合在有合并的单元格时候使用。

/// <summary>

/// 返回合并单元格的左上角内容

/// </summary>

/// <returns></returns>

public string MergeCellContents(Microsoft.Office.Interop.Excel.Range ismeerge, Microsoft.Office.Interop.Excel.Worksheet WSheet, int rows,int cell)

{

string content = "";

if (ismeerge.MergeCells == true)

{

if (ismeerge.MergeArea.Row == rows && ismeerge.MergeArea.Column == cell)

{

content = ismeerge.Text;

}

else

{

content = ((Microsoft.Office.Interop.Excel.Range)WSheet.Cells[ismeerge.MergeArea.Row, ismeerge.MergeArea.Column]).Text;

}

}

return content;

}

(2)这个通用方法为获取sheet页中的所有图片,将图片和单元格的行index值存放在一个字典中。

/// <summary>

/// 获取每个sheet页,所有行和图片的集合

/// </summary>

/// <param name="worksheet"></param>

/// <returns></returns>

public Dictionary<int, Aspose.Cells.Drawing.Picture> EachSheetImage(Aspose.Cells.Worksheet worksheet)

{

Dictionary<int, Aspose.Cells.Drawing.Picture> eachlist = new Dictionary<int, Aspose.Cells.Drawing.Picture>();

Aspose.Cells.License l = new Aspose.Cells.License();

l.SetLicense(System.Windows.Forms.Application.StartupPath + @"\Aspose.License.lic");//破解许可证

Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(uiTextBox1.Text);//读取表格

Aspose.Cells.Drawing.PictureCollection picture = worksheet.Pictures;//读取图片

for(int i=0;i< picture.Count;i++)

{

int x = picture[i].LowerRightRow;

eachlist.Add(x, picture[i]);

}

return eachlist;

}

(3)这个通用方法为Ug二次开发,获取选中尺寸线类型,这只是一部分类型,其他类型下集再讲。

string getmeasure(Part workPart, int type, int subtype, Tag selectTag)//获取尺寸线类型

{

string measure = " ";

string uni = "mm";

if (type == 26 && subtype == 5) //线性尺寸类型

{

NXOpen.Annotations.Dimension Dimension1 = (NXOpen.Annotations.Dimension)NXObjectManager.Get(selectTag);

NXOpen.Annotations.LinearDimensionBuilder linearDimensionBuilder1;

linearDimensionBuilder1 = workPart.Dimensions.CreateLinearDimensionBuilder(Dimension1);

if (linearDimensionBuilder1.Style.UnitsStyle.DimensionLinearUnits == NXOpen.Annotations.DimensionUnit.Inches)

{

uni = "un";

}

string[] measures = linearDimensionBuilder1.Style.DimensionStyle.GetOverriddenDimensionText();

measure = measures[0] + "$" + uni;

}

if (type == 26 && subtype == 1) //线性尺寸类型

{

NXOpen.Annotations.Dimension Dimension1 = (NXOpen.Annotations.Dimension)NXObjectManager.Get(selectTag);

NXOpen.Annotations.LinearDimensionBuilder linearDimensionBuilder1;

linearDimensionBuilder1 = workPart.Dimensions.CreateLinearDimensionBuilder(Dimension1);

if (linearDimensionBuilder1.Style.UnitsStyle.DimensionLinearUnits == NXOpen.Annotations.DimensionUnit.Inches)

{

uni = "un";

}

string[] measures = linearDimensionBuilder1.Style.DimensionStyle.GetOverriddenDimensionText();

measure = measures[0] + "$" + uni;

}

if (type == 26 && subtype == 3) //线性尺寸类型

{

NXOpen.Annotations.Dimension Dimension1 = (NXOpen.Annotations.Dimension)NXObjectManager.Get(selectTag);

NXOpen.Annotations.LinearDimensionBuilder linearDimensionBuilder1;

linearDimensionBuilder1 = workPart.Dimensions.CreateLinearDimensionBuilder(Dimension1);

if (linearDimensionBuilder1.Style.UnitsStyle.DimensionLinearUnits == NXOpen.Annotations.DimensionUnit.Inches)

{

uni = "un";

}

string[] measures = linearDimensionBuilder1.Style.DimensionStyle.GetOverriddenDimensionText();

measure = measures[0] + "$" + uni;

}

}

今天要介绍的就是这些,我们下篇文章再见。

相关推荐
傻乐u兔2 小时前
C语言进阶————指针4
c语言·开发语言
大模型玩家七七2 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
历程里程碑2 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
牛奔3 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路7 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly2024068 小时前
Bootstrap 警告框
开发语言
2601_949146539 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧9 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX9 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01039 小时前
C++课后习题训练记录Day98
开发语言·c++