Visual Studio Tools for Office

by Eric Carter and Eric Lippert

Published 22 September 2005

Visual Studio Tools for Office is both the first and the definitive book on VSTO 2005 programming, written by the inventors of the technology. VSTO is a set of tools that allows professional developers to use the full power of Visual Studio .NET and the .NET Framework to put code behind Excel 2003, Word 2003, Outlook 2003, and InfoPath 2003.

VSTO provides functionality never before available to the Office developer: data binding and data/view separation, design-time views of Excel and Word documents inside Visual Studio, rich support for Windows Forms controls in a document, the ability to create custom Office task panes, server-side programming support against Office, and much more.

Carter and Lippert cover their subject matter with deft insight into the needs of .NET developers learning VSTO. This book

  • Explains the architecture of Microsoft Office programming and introduces the object models
  • Teaches the three basic patterns of Office solutions: Office automation executables, Office add-ins, and code behind a document
  • Explores the ways of customizing Excel, Word, Outlook, and InfoPath, and plumbs the depths of programming with their events and object models
  • Introduces the VSTO programming model
  • Teaches how to use Windows Forms in VSTO and how to work with the Actions Pane
  • Delves into VSTO data programming and server data scenarios
  • Explores .NET code security and VSTO deployment


With SharePoint 2010, developers finally have the powerful, end-to-end development tools they need to build outstanding solutions quickly and painlessly. What’s more, those tools are built directly into the latest version of Visual Studio, the development platform most Microsoft developers already know. In this book, the Microsoft experts who created these tools show you how to take full advantage of them.  

The authors focus specifically on the SharePoint scenarios that Visual Studio 2010 now makes accessible to mainstream Microsoft developers. They assume no experience with SharePoint development and focus on SharePoint Foundation 2010: the low-cost version designed for organizations and departments of all kinds, not just large enterprises.

 

SharePoint 2010 Development with Visual Studio 2010shows how to get your solution up and running fast, and then extend it to meet your precise business requirements. You’ll learn how to develop, package, and deploy robust SharePoint business collaboration applications without any unnecessary complexity or overhead.

 

Following a practical, developer-focused introduction to Microsoft SharePoint 2010, you’ll learn about

 



Visual Studio 2010 templates and tools that simplify the creation of SharePoint solutions
The SharePoint object model and its most frequently used methods, properties, and events
Using lists to store, manage, and share data
Responding to events related to lists, features, items, or workflows
Integrating external data with Business Data Connectivity Services
Using content types that ship with SharePoint 2010—and creating new ones
Building multi-step workflows and custom forms that work with them
Utilizing Web Parts to present different data and applications on the same page
Customizing SharePoint pages or navigation with ASP.NET
Packaging and deploying solutions, and customizing deployment to your unique requirements

 

Whether you’re just starting out with SharePoint development, upgrading from earlier versions, or building on experience

with ASP.NET, this book will help you solve real problems and get real results—fast!

Visual Studio Tools for Office 2007: VSTO for Excel, Word, and Outlook is the definitive book on VSTO 2008 programming, written by the inventors of the technology. VSTO is a set of tools that allows professional developers to use the full power of Microsoft Visual Studio 2008 and the .NET Framework to program against Microsoft Office 2007.

 

This book delivers in one place all the information you need to succeed using VSTO to program against Word 2007, Excel 2007, and Outlook 2007, and provides the necessary background to customize Visio 2007, Publisher 2007, and PowerPoint 2007. It introduces the Office 2007 object models, covers the most commonly used objects in those object models, and will help you avoid the pitfalls caused by the COM origins of the Office object models. Developers who wish to program against Office 2003 should consult Carter and Lippert’s previous book, Visual Studio Tools for Office.

 

In VSTO 2008, you can build add-ins for all the major Office 2007 applications, build application-level custom task panes, customize the new Office Ribbon, modify Outlook’s user interface using Form Regions, and easily deploy everything you build using ClickOnce.

 

Carter and Lippert cover their subject matter with deft insight into the needs of .NET developers learning VSTO, based on the deep knowledge that comes from the authors’ unique perspective of living and breathing VSTO for the past six years. This book 



Explains the architecture of Microsoft Office programming and introduces the object models
Covers the main ways Office applications are customized and extended
Explores the ways of customizing Excel, Word, and Outlook, and plumbs the depths of programming with their events and
object models
Introduces the VSTO programming model
Teaches how to use Windows Forms and WPF in VSTO and how to work with the Document Actions Pane and application-level task panes
Delves into VSTO data programming and server data scenarios
Teaches ClickOnce VSTO deployment

This is the one book you need to succeed in programming against Office 2007.

 

NOTE: This is now a two volume set


C# and Visual Basic .NET Code samples for download can be found here: http://www.informit.com/store/product.aspx?isbn=0321533216

Essential C# 4.0

by Mark Michaelis

Published 22 February 2010
Essential C# 4.0 is a well-organized,"no-fluff" guide to all versions of C# for programmers at all levels of C# experience. This fully updated edition shows how to make the most of C# 4.0's new features and programming patterns to write code that is simple, yet powerful.



This edition contains two new chapters on parallel programming, multi threading, and concurrency, as well as extensive coverage of new C# 4.0 features: dynamic typing, variance, optional/named parameters, and many other new topics.



Mark Michaelis covers the C# language in depth, illustrating key constructs with succinct, downloadable code examples. Graphical "mind maps" at the beginning of each chapter show what material is covered and how individual topics interrelate. Topics intended for beginners and advanced readers are clearly marked, and the book includes indexes of C# versions (2.0, 3.0, and 4.0), which make it easy for readers to reference topics specific to a given release of C#.



Following an introduction to C#, readers learn about



Best practices for object-oriented programming in C#
C# primitive data types, value and reference types, implicitly typed variables, anonymous types, plus dynamic typing in C# 4.0
Methods and parameters-including extension methods, partial meth ods, and C# 4.0's optional and named parameters
Generics, concurrent collections, and custom collections with iterators
Delegates, events, and lambda expressions
Collection interfaces and standard query operators
Query expressions and the tree expressions on which LINQ providers are based
Reflection, attributes, and dynamic programming
Parallel Query Processing with PLINQ
Multithreaded programming with the Task Parallel Library
Platform interoperability and unsafe code
The Common Language Infrastructure that underlies C#

Whether you're just starting out, are an experienced developer moving to C#, or are a seasoned C# programmer seeking to master C# 4.0's most valuable enhancements, Essential C# 4.0 will help you write high-quality, highly effective code.

Essential C# 2.0

by Mark Michaelis

Published 13 July 2006

A new edition of this title is available, ISBN-10: 0321533925 ISBN-13: 9780321533920

"Essential C# 2.0 pulls off a very difficult task. The early chapters are comprehensible by beginning developers, while the later chapters pull no punches and provide the experienced developer with the detailed information they need to make the most of C# 2.0. Starting with the first chapter, Mark has successfully interwoven tidbits of information useful to even the most advanced developer while keeping the book approachable."
-Chris Kinsman, chief architect, Vertafore, Microsoft Regional Director

"How refreshing! This book deals with C# thoroughly, rather than skimming over the whole .NET framework. It is valuable to newcomers and professionals alike."
-Jon Skeet, C# MVP"Essential C# 2.0 is a one-stop shop for an experienced programmer looking to ramp up on one of the hottest languages around today. Mark delivers an intelligent and detailed tour of C#, providing newcomers to the language with a solid foundation of skill on which to build their next generation of applications."
-Stephen Toub, technical editor, MSDN Magazine"This book provides complete, up-to-date coverage of all the programming constructs in C#. Masterfully organized, it allows beginning programmers to get on board and leads more experienced programmers into the world of structured programming. Because of its unwavering focus on the essential programming constructs of C#-such as generics, delegates, and much more-this book is indispensable. For programmers who want to solve their day-to-day programming issues using the latest features this modern programming language has to offer, this book is indispensable."
-Narendra Poflee, IT integration specialist, Itron Inc."Essential C# 2.0 is an ideal book for all programmers interested in C#. If you are a beginner, you will quickly learn the basics of C# programming and become familiar with the concepts. The flow of the text is easy to follow and does a great job of not repeating concepts that have already been covered. For the experienced programmer, this book has priceless nuggets embedded within its pages, making it a great read for programmers who are already familiar with C#. This will be a book that I will keep next to my computer for years to come."
-Michael Stokesbary, software engineer, Itron Inc.

Essential C# 2.0 is a clear, concise guide to C#-including the features new to C# 2.0. The book clearly presents material for beginners and experts and provides contrasts and comparisons between C# and other languages. The C# language is covered comprehensively and each important construct is illustrated with succinct code examples. Complete code examples are available online. Mark Michaelis has organized the material for quick access. Graphical "mind maps" at the beginning of each chapter show what material is covered and how each topic relates to the whole.

Following the C# introduction, readers will learn about

C# primitive data types, value types, reference types, type conversions, and arrays Operators and control flow, loops, conditional logic, and sequential programming Methods, parameters, exception handling, and structured programming Classes, inheritance, structures, interfaces, and object-oriented programming Well-formed types, operator overloading, namespaces, and garbage collection Generics, collections, and iterators Reflection, attributes, and declarative programming Threading, synchronization, and multi-threaded patterns Interoperability and unsafe code The Common Language Infrastructure that underlies C#

C# 2.0 has a multitude of new features that make the language even more powerful, productive, and efficient. These new features are thoroughly covered in this book. A separate appendix on C# 2.0 topics helps readers quickly find new features of the language.

Whether you're just starting out as a programmer, are an experienced developer looking to learn C#, or are a seasoned C# programmer interested in learning the new features of C# 2.0, Essential C# 2.0 gives you just what you need to quickly get up and running writing C# applications.




Essential C# 5.0

by Mark Michaelis and Eric Lippert

Published 15 November 2012
Essential C# 5.0 is a well-organized, no-fluff guide to the latest versions of C# for programmers at all levels of C# experience. Fully updated to reflect new features and programming patterns introduced with C# 5.0 and .NET 4.5, this guide shows you how to write C# code that is simple, powerful, robust, secure, and maintainable. Microsoft MVP Mark Michaelis and C# principal developer Eric Lippert provide comprehensive coverage of the entire language, offering a complete foundation for effective software development.  

The authors illustrate key constructs with succinct, downloadable code examples. Graphical mind maps at the beginning of each chapter outline the material that is covered and how individual topics interrelate. This edition also includes C# Coding Guidelines that call attention to today’s best practices for writing C# code. Separate indexes of C# versions 3.0, 4.0, and 5.0 make it easy to find answers specific to whatever version of C# you are using.

 

Throughout, topics intended for beginners and advanced readers are clearly marked. If you’re new to C#, this guide will help you start writing significant code quickly. If you’re an experienced C# developer, you’ll gain insight into today’s most complex programming challenges and techniques as you master key C# 5.0 innovations such as async/await pattern. No matter how advanced your skills become, you’ll come to rely on this indispensable reference.

 

Coverage includes



Mastering C# data types, operators, control flow, methods, and parameters
Making the most of C# object-oriented constructs, including classes, inheritance, interfaces, and more
Building reliable, effective exception handling into your code
Using generics, delegates, Lambda expressions, and events to reduce code complexity
Learning dynamic programming with reflection and attributes
Querying virtually any type of data using LINQ with Query Expressions
Creating custom collections that operate against business objects
Understanding the Common Language Infrastructure and C# in the context of the .NET 4.5 development platform
Taking advantage of declarative programming, embedded metadata, reflection, and attributes
Thoroughly mastering multithreading and synchronization, including the new async/await paradigm
Discussion of WinRT and programming in C# for Windows 8
Using P/Invoke, pointers, and direct memory manipulation to interoperate with code in other languages
Understanding how C# programs relate to the underlying runtime