使用 C#/VSTO 监视 excel 2007 内的一系列单元格

发布于 2024-08-13 07:48:32 字数 177 浏览 12 评论 0原文

我在 Excel 中有一行,我想将其转换为 C# 中的 ObserveableCollection 以用于绑定/事件目的,因此所有访问器类都知道它们正在从源 Excel 表获取最新数据。这将如何完成?

澄清:我使用的是 Excel 加载项项目,而不是工作簿项目,因此不确定 XMLMappedRange 控件是否是一个选项。

I have a row in excel I'd like to translate into an ObserveableCollection in C# for binding/event purposes, so all accessor classes know they're getting the latest data from the source excel sheet. How would this be done?

Clarification: I'm using an excel add-in project, not a workbook project, so am not sure whether or not XMLMappedRange Controls are an option.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

幸福不弃 2024-08-20 07:48:32

使用 VSTO,您有以下几种选择:

  1. Excel .Worksheet类,可以访问Worksheet.Change 事件。
  2. NamedRange 类中,您可以访问 NamedRange.Change事件(它使用您在另一条评论中提到的 Microsoft.Office.Interop.Excel.DocEvents_ChangeEventHandler 委托)。
  3. NamedRange 类还支持通过 DataBindings 属性,讨论中显示了其示例我该如何将数组绑定到 NamedRange
  4. 另一种可能性是 XmlMappedRange 控件,它也支持数据绑定。

有关使用 NamedRange 和 XmlMappedRange 的良好入门知识可以在这里找到:VSTO 编程模型。使用 NamedRange 的详细演练可以在 中找到Visual Studio Tools for Office (VSTO) 2005 指南

我希望这有帮助...

迈克

Using VSTO you have a few options:

  1. From the Excel.Worksheet class, you can access the Worksheet.Change event.
  2. From the NamedRange class, you can access the NamedRange.Change event (which uses the Microsoft.Office.Interop.Excel.DocEvents_ChangeEventHandler delegate that you mentioned in another comment).
  3. The NamedRange class also supports simple, one-way databinding via the DataBindings property, an example of which is shown in the discussion How do I bind an array to a NamedRange.
  4. Another possibility is the XmlMappedRange control, which also supports databinding.

A good primer on using the NamedRange and XmlMappedRange can be found here: The VSTO Programming Model. A decent walkthrough using the NamedRange can be found in the Visual Studio Tools for Office (VSTO) 2005 Guided Tour.

I hope this helps...

Mike

挖鼻大婶 2024-08-20 07:48:32

您可以在范围更改事件中添加 OnChanged。

You can add OnChanged in your range changed event.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文