Cover image for Programming Atlas

Book description

Learn how to deliver richer, more interactive web experiences to your users using ASP.NET Atlas, Microsoft's new framework for building Ajax-savvy web sites. Web developers of all persuasions have embraced the Ajax suite of technologies (JavaScript, HTTP, XML and more) as a way to implement pages that are faster, livelier and more desktop-like in their behavior. Now Atlas brings the power of Ajax to ASP.NET 2.0 developers with controls, script libraries and server support that delivers engaging results without the pain that writing complex JavaScript can entail. Better yet, Atlas web pages are standards based and even run cross-browser.

Programming Atlas is not just another "drag and drop" ASP.NET 2.0 book, but dives into the technologies that make it work. You'll begin with a tour of the technologies most often associated with Ajax, from JavaScript and XMLHttpRequest to JSON and the DOM. With the fundamentals in place, author JavaScript expert Christian Wenz unpacks the Atlas framework and shows you how to put its tools to work. You'll learn to:

  • Understand the architecture of Atlas and the role played by server conrols, such as ScriptManager and UpdatePanel

  • Use core Atlas controls and extenders to build more interactive pages with text fields that autocomplete, user input that is validated, controls that can be dragged and dropped, and much more

  • Bind, display, and update data without causing the entire page to refresh and use the Atlas web services bridge to consume third-party services beyond the domain of your application

  • Incorporate Microsoft Virtual Earth into an application, use Atlas with Web Parts, and create a Windows Live Gadget

  • Use Atlas with PHP and explore other non-Microsoft Ajax tools for ASP.NET

Table of Contents

  1. Programming Atlas
    1. Foreword
    2. Preface
      1. Who This Book Is for
      2. How This Book Is Organized
      3. What You Need to Use This Book
      4. Conventions Used in This Book
      5. Using Code Examples
      6. How to Contact Us
      7. Safari® Enabled
      8. Acknowledgments
    3. 1. Atlas, Ajax, and ASP.NET
      1. Atlas and Ajax
      2. Atlas and ASP.NET
      3. Atlas and Future Development
      4. Atlas Prerequisites and Installation
        1. Installing the IDE
        2. Installing Atlas
        3. Installing the Database
      5. Atlas Structure and Architecture
      6. A First Atlas Example: Hello User
      7. The ScriptManager Control
      8. Summary
      9. For Further Reading
    4. 2. JavaScript
      1. The JavaScript Language
        1. Common JavaScript Methods
        2. Variables
        3. Control Structures
        4. Built-in Methods, Custom Functions, and Event Handling
      2. Object-Oriented Programming (OOP)
      3. Accessing Page Elements
        1. Accessing Form Elements
        2. Accessing Generic Elements
      4. DOM Methods
      5. Summary
      6. For Further Reading
    5. 3. Ajax
      1. The XMLHttpRequest Object
        1. Programming the XMLHttpRequest Object
      2. The XMLDocument Object
      3. JSON
      4. Summary
      5. For Further Reading
    6. 4. Controls
      1. Introducing Atlas Client Controls
      2. Using Atlas Controls
        1. Accessing JavaScript Methods
        2. Accessing HTML Elements
        3. Labels
        4. Images
        5. Hyperlinks
        6. Buttons
        7. Checkboxes
        8. Selection Lists
        9. Text Fields
        10. Base Methods
      3. Handling Control Events
        1. Events for Buttons
        2. Events for Lists
      4. Summary
      5. For Further Reading
    7. 5. Data Binding and Validation
      1. Data Binding
        1. Using Code for Data Bindings
          1. Programmatic data binding using a built-in transformer
          2. Binding direction
          3. Using a custom transformer
        2. Using Markup for Data Binding
          1. Data bindings
          2. Event handling
          3. Method invocation
      2. Data Validation
        1. Checking a Required Field
        2. Checking Against a Regular Expression
        3. Checking the Data Type
        4. Checking a Range
        5. Custom Validation
        6. Programmatic Validation
        7. Validation Groups
      3. Summary
      4. For Further Reading
    8. 6. Components and Behaviors
      1. Using Behaviors
        1. Using the Click Behavior
        2. Using the Hover Behavior
      2. Using Components
        1. Using the Pop-Up Component
      3. Summary
      4. For Further Reading
    9. 7. Animations
      1. Using Animations
      2. Using an Animation to Create a Fade Effect
        1. Using an Animation to Move an Element
        2. Using a Length Animation to Move an Element
        3. Compositing (Grouping) Animations
      3. Summary
      4. For Further Reading
    10. 8. Client Script Library
      1. Atlas OOP Features for JavaScript
        1. Namespaces
        2. Class Inheritance
          1. Derived classes
          2. Accessing base methods
        3. Abstract Classes
        4. Interfaces
      2. Client-Side Versions of .NET Classes
        1. Sys.StringBuilder
        2. Enumerations
      3. Summary
      4. For Further Reading
    11. 9. Using Server Data
      1. Using a ListView Control
        1. Binding Data to a ListView Control
        2. Binding Data to an HTML Table
      2. Creating a Custom Data Source
        1. Displaying Data from a Custom Data Source
      3. Summary
        1. For Further Reading
    12. 10. Web Services
      1. Error Handling
      2. Inline Web Service Methods
      3. Maintaining Session State
      4. Consuming External Web Services
        1. Using the Google Web Service
        2. Using the Amazon Web Service
        3. Transforming a Web Service Result with XSLT
      5. Summary
      6. For Further Reading
    13. 11. Extending Controls
      1. Adding Drag and Drop to a Control
        1. Simple Drag and Drop
        2. Personalized Drag and Drop
      2. Adding Autocomplete to a Control
      3. Making a Page Region Updateable
        1. Updating a Section
        2. Updating a Section at Timed Intervals
        3. Programmatically Updating a Section at Timed Intervals
        4. Displaying a Wait Screen
      4. Summary
      5. For Further Reading
    14. 12. Virtual Earth
      1. Displaying a Map
      2. Adding Pushpins with Pop-Ups to a Map
        1. Using a Web Service to Access Location-Based Data
        2. Controlling the Map
      3. Summary
      4. For Further Reading
    15. 13. Web Parts and Gadgets
      1. Using Atlas with ASP.NET Web Parts
      2. Creating Windows Live Gadgets with Atlas
      3. Summary
      4. For Further Reading
    16. 14. Atlas Control Toolkit
      1. Installing the Toolkit
      2. Using the Toolkit
      3. Writing Custom Controls
      4. Summary
      5. For Further Reading
    17. 15. Using Atlas with Other Server Technologies
      1. Using Atlas with PHP
      2. Summary
      3. For Further Reading
    18. 16. Other Ajax Tools
      1. Client Callbacks
      2. Ajax.NET
        1. Using Ajax.NET
      3. Pure JavaScript
      4. Consuming Web Services with JavaScript
        1. Web Services and Internet Explorer
        2. Web Services and Mozilla Browsers
        3. Web Services with Both Browsers
      5. Summary
      6. For Further Reading
    19. A. XMLHttpRequest Reference
      1. Methods
      2. Properties
    20. B. DOM Reference
      1. Generic Methods and Properties
        1. Methods
        2. Properties
      2. Document Methods and Properties
        1. Methods
        2. Properties
    21. C. Atlas Reference
      1. JavaScript Extensions
        1. Function Extensions
        2. Object Extensions
        3. Boolean Extensions
        4. Number Extensions
        5. String Extensions
        6. Array Extensions
        7. RegEx Extensions
        8. Date Extensions
      2. Web Controls
        1. Sys.UI.Control (General Class)
        2. Sys.UI.Window
        3. Sys.UI.Label
        4. Sys.UI.Image
        5. Sys.UI.HyperLink
        6. Sys.UI.Button
        7. Sys.UI.CheckBox
        8. Sys.UI.Select
        9. Sys.UI.TextBox
      3. Validation Controls
        1. Sys.UI.Validator (General Class)
        2. Sys.UI.ValidationGroup
        3. Sys.UI.RequiredFieldValidator
        4. Sys.UI.TypeValidator
        5. Sys.UI.RangeValidator
        6. Sys.UI.RegexValidator
        7. Sys.UI.CustomValidator
      4. Behaviors
        1. Sys.UI.Behavior (General Class)
        2. Sys.UI.PopupBehavior
        3. Sys.UI.ClickBehavior
        4. Sys.UI.HoverBehavior
        5. Sys.UI.AutoCompleteBehavior
        6. Sys.UI.FloatingBehavior
        7. Sys.UI.OpacityBehavior
        8. Sys.UI.LayoutBehavior
      5. Data Controls
        1. Sys.UI.DataView
        2. Sys.UI.ItemView
        3. Sys.UI.ListView
      6. Animations
        1. Sys.UI.Animation (General Class)
        2. Sys.UI.PropertyAnimation
        3. Sys.UI.InterpolatedAnimation
        4. Sys.UI.DiscreteAnimation
        5. Sys.UI.NumberAnimation
        6. Sys.UI.ColorAnimation
        7. Sys.UI.LengthAnimation
        8. Sys.UI.CompositeAnimation
        9. Sys.UI.FadeAnimation
      7. Virtual Earth Maps
        1. Sys.UI.VirtualEarthMap
      8. Web Parts
        1. Sys.UI.Controls.WebParts.WebPart
        2. Sys.UI.Controls.WebParts.WebPartManager
        3. Sys.UI.Controls.WebParts.WebPartZone
      9. Helper Classes
        1. Sys.StringBuilder
        2. Enumerations
    22. D. ScriptManager and UpdatePanel Declarative Reference
      1. ScriptManager
        1. Properties
        2. ErrorTemplate
        3. Scripts
        4. Services
      2. UpdatePanel
        1. Properties
        2. Triggers
    23. Index
    24. Colophon