SilverLight C#程序之:Excel工作簿的创建

需求:

我们需要把界面上的数据列表保存为Excel工作簿。

解决方案:

AutomationFactory 提供对已注册的自动化服务器的访问。

CreateObject(String)激活具有指定的编程标识符 (ProgID) 的已注册自动化服务器并返回对它的引用。

效果:

xaml代码:(基本不需要写,全是用C#代码写的)

<Grid x:Name="LayoutRoot" Background="White">

</Grid>

cs代码:

public MainPage()
{
InitializeComponent();
Loaded
+= new RoutedEventHandler(MainPage_Loaded);
}

void MainPage_Loaded(object sender, RoutedEventArgs e)
{
//指示SilverLight自动化功能是否可以用于程序
if (!AutomationFactory.IsAvailable) return;
//创建一个Excel工程
var excel = AutomationFactory.CreateObject("Excel.Application");
excel.Visible
= true;
//创建一个Excel 工作薄
var workbook = excel.workbooks;
workbook.Add();
//获取默认工作表(第一个)
var sheet = excel.ActiveSheet;
var i
= 1;
//要写入Excel表格的数据
var data = new double[] {1.0, 5.0, 9.5, 2.7, 3.2, 0.6};
//将数据写入Excel表格
foreach (var d in data)
{
//为第一列第i行写入数据
var cell = sheet.Cells[i, 1];
cell.Value
= "" + i + "";
//列宽设置为10
cell.ColumnWidth = 10;
//为第二列第i行写入数据
cell = sheet.Cells[i, 2];
cell.Value
= d;
i
++;
}
}

大功告成!!!


作者:记忆逝去的青春
出处:http://www.cnblogs.com/lukun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过http://www.cnblogs.com/lukun/  联系我,非常感谢。

posted on 2011-04-27 16:26  记忆逝去的青春  阅读(1634)  评论(3编辑  收藏  举报