Compartilhar via


皆様お疲れ様でした

TechEdが終了しました。
今年のTechEdは、初めてセッションを担当させて頂き、またMS社員として舞台裏を担当した一人として、大変有意義な4日間でした。
私と言えば、担当セッションが終わった後、TechEd新聞のカメラマンとして一部活動していました。
編集長(?)からは、良いショットがなかったら代替手段があるから大丈夫と言われましたが、撮影した写真は無事採用されて一安心です。
(4日目のスペシャルセッションの2枚です。)

そして、参加された皆様、大変お疲れ様でした。
たくさんの方に挨拶をさせて頂き、アドレナリンがフツフツと湧き出るような?
うまく表現できないですねw
何かが、私の中で変わったと思えるイベントでした。また来年参加できるように今後も頑張ります。

さて、担当セッションでもあったVSTOですが、しばらくこのブログを通じてフォローアップをしていこうと考えています。
難しい内容ではなく、使用のとっかかりとなる情報を、少しづつアップしていくつもりです。

と言う事で、今回はドキュメントレベルのアプリケーションについてお話します。
ドキュメントレベルのアプリケーションとは、個々のドキュメント(Wordなら.docx、Excelなら.xlsx)に直接関連するアプリケーションの形態です。
特定のドキュメントを実行したさい、作成した、例えば作業ウインドウやリボン等ですが、機能を用いてアプリケーションを実装できるものになります。
過去VSTO v2では、Office2003において、このドキュメントレベルのアプリケーションの作成が可能でした。
しかし、VSTO 2005 SEになって、Office2007開発におけるドキュメントレベルのアプリケーションはサポートされておらず、
随分と不便を感じていた方も多いと聞きます。
そしてこのバージョンで、ようやくOffice2007開発において、ドキュメントレベルでの開発とアプリケーションレベルでの開発がサポートされる形になります。

例えば、あるExcelのシートのグラフに対する操作は以下の様になります。
Ribbon1.cs-----------------------------------------------------------------------------------
        private void dropDown1_SelectionChanged(object sender, RibbonControlEventArgs e)
        {
            Microsoft.Office.Tools.Excel.Chart xlChart;

            xlChart = (Microsoft.Office.Tools.Excel.Chart)Globals.Sheet1.Controls["グラフ_1"];

            xlChart.ChartType = Microsoft.Office.Interop.Excel.XlChartType.xl3DBarClustered;
         }
この例では、グラフの種類をBarの形に変更していますが、特定のxlsxに対して、その中にあるグラフにアクセスしている部分に注目して下さい。

この様に、このシートのこのグラフの・・・と言う形で、対象の特定を行うことが、ドキュメントレベルアプリケーションの特徴です。
逆にアプリケーションレベルでは、どのドキュメントが来ても動作を保障することを要求されますので、アプリケーションの設計に注意が必要です。
(これに関しては次回ポストします)

こだかたろう

Comments

  • Anonymous
    August 27, 2007
    ����ݥ������簦�ΰ��֤ˤ���Τˡ�̤���˽�ë�Ƕ����Ȥ������㤦�������˥ޥ���˨���롣�����Υ��������������˷����������QŪ�ˡ������襤���衦��ハァハァ������������������͡�����ǥ�ߤ������衦����������??���������Ƥ⤦������������Ǥ��ʤ��衪�����ư�������㺣�������Υ٥åɤ���ӹ��ߤ����衪�����ش�⥿�ޥ��衪����äѤ�����ư���ߤ����衪�����

  • Anonymous
    August 27, 2007
    �����ѥ������ꥢ��������ȯɽ��??š������ȤΥ��ࡦ�ƥҤ??�ǥ�˵��Ѥ������Ȥ����餫�ˤ����� ���ࡦ�ƥ� �����ࡦ�ƥ� �����ࡦ�ƥ� �����ࡦ�ƥ� Ʊ�Ҥ��躢���ڹ�пȤβμ�BoA(�ܥ�)���ǥ�Ȥ��Ƶ��ѡ�