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;

}

}

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

相关推荐
前端老鹰6 小时前
HTML <output> 标签:原生表单结果展示容器,自动关联输入值
前端·html
mudtools7 小时前
.NET驾驭Word之力:理解Word对象模型核心 (Application, Document, Range)
c#·.net
芦苇Z9 小时前
HTML <a> 标签的 rel 属性全解析:安全、隐私与 SEO 最佳实践
前端·html
侃侃_天下12 小时前
最终的信号类
开发语言·c++·算法
echoarts13 小时前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Alice-YUE13 小时前
【CSS学习笔记3】css特性
前端·css·笔记·html
Aomnitrix13 小时前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
大飞pkz13 小时前
【设计模式】C#反射实现抽象工厂模式
设计模式·c#·抽象工厂模式·c#反射·c#反射实现抽象工厂模式
每天回答3个问题14 小时前
UE5C++编译遇到MSB3073
开发语言·c++·ue5
伍哥的传说14 小时前
Vite Plugin PWA – 零配置构建现代渐进式Web应用
开发语言·前端·javascript·web app·pwa·service worker·workbox