Click here to Skip to main content
15,896,486 members
Articles / Desktop Programming / Windows Forms

Easily turn a ListView into a nicely printed report, complete with print preview

Rate me:
Please Sign up or sign in to vote.
4.94/5 (76 votes)
23 Nov 2007CPOL9 min read 243.2K   18.7K   173  
The ListViewPrinter class takes an existing ListView and effortlessly turns it into a pretty report.
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 2.0
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used for serialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
  <data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADY
        GwAAAk1TRnQBSQFMAgEBBgEAAQkBAAEEAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
        AwABIAMAAQEBAAEgBgABIC4AARcCAQEdARQCAQEZQAABAwIBAQIBCQIBAQoBEAIBAhQCAQEZARACAQET
        AQcCAQEHAQIDAZgAARQCAQEZAV4BDwEYAfIBXAELARIB7wEQAgEBEzgAAQUCAQEFARICAQEXASUCAQE1
        ATMCAQFPATcCAQFYATACAQFJAR4CAQEoAQoCAQELlAABFAIBARkBYAEMARYB8QEnAboC/wElAbcC/wFh
        AQkBEAHuARACAQETLAABAgMBAQgCAQEJARoCAQEjAUUCAQF4AV0CAwHEAV8CBAHdAV0CAwHMAUwCAgGO
        ATcCAQFZARoCAQEjkAABFAIBARkBYAEMARYB8QEyAccC/wEzAbYC/wEzAbgC/wExAccC/wFhAQkBEAHu
        ARACAQETJAABAwIBAQIBDQIBAQ8BJQIBATUBVgICAa0BSgFCAWcB+gE0AZsB9gH/ASoBsgH+Af8BLQGp
        AfkB/wFiAQUBBgHmAUkCAgGEASoCAQE+jAABFAIBARkBYAEMARYB8QE7AcsC/wEoAV8BdwH/AUABxwL/
        ATgBnAHTAf8BHgEyAToB/wE5AcgC/wFhAQkBEAHuARACAQETGAABAwIBAQIBBQIBAQUBEgIBARYBNAIB
        AVIBXQIDAdEBLgGbAecB/wEvAZ4B8AH/ATABowH5Af8BQgFSAW0B+gEnAbUB+AH/ATUBmQH1Af8BWAIC
        AbUBMAIBAUmIAAEUAgEBGQFgAQwBFgHxAUABxgL/AUQBygL/ASoBLAEtAf8BRQHPAv8BLAEyATYB/wE/
        AaIB1AH/AUMBwgL/AT0BxAL/AWEBCQEQAe4BEAIBARMMAAEFAgEBBQEOAgEBEQEYAgEBHwEgAgEBLAFF
        AgEBegFlAgYB5wEpAagB7AH/ASwBpgHvAf8BKwGnAe4B/wEuAaEB7wH/AUwBOQFbAfkBRgF/AboB/gE3
        AZcB+QH/AVoCAgG+AScCAQE4hAABFAIBARkBYAEMARYB8QFCAccC/wFDAcIC/wFEAcwC/wE+AYEBngH/
        AToBUQFYAf8BOAFFAUsB/wFGAdcC/wFEAcYC/wFDAcEC/wE/AcUC/wFhAQkBEAHuARACAQETBAABBgIB
        AQYBGAIBAR8BMgIBAU4BQQIBAW8BUgICAaIBTAEyAUwB+AEZAbgB8AH/ASYBrgHvAf8BLAGrAfgB/wEq
        AbIB/AH/ASoBqwHwAf8BMQGeAfMB/wE1AZsB/AH/ATUBlgHyAf8BSgICAYcBFAIBARmAAAEUAgEBGQFX
        ARUBHgH0AUEByQL/AUQBwwL/AUUByQL/AUYB0wL/AUYB6QL/AUUBMwEuAf8BRgKBAf8BRQHaAv8BRgHQ
        Av8BRQHIAv8BQwHCAv8BPgHFAv8BYAEOARYB8QEQAgEBFAEZAgEBIQFSAgIBnwFjAgQB3wF2AhcB8QGA
        ATIBNQH3AYEBqgG+Af8BZQG3AdsB/wEaAbgB8wH/ASkBrAHzAf8BKwGwAf0B/wErAakB8wH/AS0BpQHv
        Af8BWQEiATMB9QFNAgIBkwESAgEBFwEEAgEBBIAAAQUCAQEFAV8CAwHQAT0BwQL/AUUBygL/AUUB0wL/
        AUkBhAGaAf8BTgFxAXoB/wFUAUIBPwH/AU4BgwGTAf8BRgHUAfsB/wFFAY4BqAH/AUYB0QL/AUQByQL/
        ATwBvgL/AV4CAwHJAQMCAQEDAVECAgGdAbEBrgGtAf8BzgHNAcwB/wHaAdkB2AH/AeQB4AHdAf8B8QHh
        AdoB/wHmAeIB5gH/AVkBxgHvAf8BFwG1AfIB/wErAacB7wH/ASoBqgHvAf8BZAIFAeQBPAIBAWMBDQIB
        AQ8BAwIBAQKMAAFeAgMBzwFAAcwC/wFHAdYC/wFIAbcB0wH/AUsBzgHtAf8BUgGrAb4B/wFXAoEB/wFV
        ATkBMwH/AUgBvQHdAf8BRwHWAv8BPwHJAv8BXAIDAcgIAAFrAgkB6QHDAcIBwQH/AcQBwwHCAf8BuwG5
        AbgB/wHHAcYBxQH/Ad4C3wH/AfcB7QHpAf8BwwHTAd4B/wEuAbsB6AH/ARkBvgH0Af8BXAIDAcUBKQIB
        ATwBCAIBAQkBAgMBlAABXgIDAc8BQwHVAv8BSAHpAv8BWwKBAf8BYwFFAUEB/wFNAd0B8wH/AUoB7gL/
        AUkB4AL/AUIB0wL/AVwCAwHIDAABbgIWAfABbgIWAfABTAICAYwBWwICAbgBrwGtAawB/wHMAssB/wHr
        AeQB4gH/Aa8BvAHBAf8BYwEQARIB7gFPAgIBlwEVAgEBGwEFAgEBBaAAAV4CAwHPAUMB4QL/AVEBvQHP
        Af8BWQGFAYsB/wFMAe8C/wFLAecC/wFDAdoC/wFcAgMByBAAATgCAQFbASYCAQE2AQoCAQELASsCAQFA
        AXYCFwHxAcMBwgHBAf8B4AHdAdoB/wFsAg0B6wFDAgEBcwEXAgEBHQEDAgEBAqgAAV4CAwHPAUQB5wL/
        AUoB8QL/AUsB6QL/AUQB4AL/AVwCAwHIHAABCgIBAQsBRQIBAXkBhQJOAfoBywHKAckB/wHWAdUB1AH/
        AWICBAHXASkCAQE8AQwCAQEOsAABXgIDAc8BRQHhAv8BRAHfAv8BXAIDAcggAAFDAgEBdgGtAYMBggH9
        AcwBywHKAf8BwwHBAcAB/wF2AicB9QFFAgEBeAEQAgEBEwEDAgEBA7QAAV8CAwHSAVwCAwHLJAABNQIB
        AVQBVwICAa4BWwICAbgBSwICAYkBKgIBAT4BBwIBAQgBAwIBAQK4AAEDAgECAwIBAQPgAAEDAgEBAgEi
        AgEBLwEwAgEBSQE4AgEBWwE/AgEBaQFCAgEBcgFFAgEBeQFFAgEBeQFEAgEBdwFBAgEBbgE7AgEBYAEy
        AgEBTQEiAgEBMAECAwEcAAEwAgEBSgFBAgEBcQFBAgEBcAEvAgEBRygAAQoCAQELASUCAQE1MAABHAIB
        ASUBQAIBAW0BOwIBAWABCgIBAQssAAEmAYEBNQH/AUQBrAFtAf8BPAGeAWIB/wFJAa4BdQH/AWABywGB
        Af8BZQHQAYEB/wFqAdUBgQH/AWoB1QGBAf8BZwHSAYEB/wFhAcwBgQH/AUoBrwF2Af8BPAGgAWIB/wFE
        AawBbgH/AVYBGgETAfkUAAFLAgIBiQOBAf8BlAGPAYwB/wGiAYsBgQH/AaIBiwGBAf8BkwGPAY0B/wOB
        Af8BSAICAYEcAAEEAgEBBAFgAgUB4AGFAoEB/wFhAgQB2wE+AgEBaAEDAgEBAyAAAT8CAQFrASYBgQHp
        Af8BJgGBAf0B/wEmAYMB+gH/ASYBgQHZAf8BJQIBATUoAAFhAgoB8wFuAdUBgQH/AXIB1gGBAf8BeAHb
        AYgB/wGBAekBmQH/AYEB7AGeAf8BgQHuAaMB/wGBAe4BowH/AYEB7AGeAf8BgQHpAZkB/wF4AdsBiQH/
        AXEB1AGBAf8BbwHXAYEB/wFhAgQB2xAAAWICAwHUAaABmwGXAf8BpAGBAWwB/wHWAZIBgQH/AcsBjAGB
        Af8B0QGTAYEB/wHTAYwBgQH/AaMBgQFtAf8BogGdAZsB/wFeAgMByRgAAVoCAwHCAZcBkQGOAf8BLQFi
        AXwB/wFWAdUC/wFFAbAB+gH/ATIBfQGBAf8BUgICAZ8BIAIBASwYAAEmAXsB0wH/ASsBkAL/ASsBkQL/
        ASoBlgL/ASoBpAL/AVwCAwHTKAABVQICAasBfwHoAZMB/wGBAegBmAH/AYEB7wGkAf8BgQH0Aa0B/wGG
        AfoBtwH/AYEB3wGVAf8BgQHhAZcB/wGGAfwBuQH/AYEB9AGtAf8BgQHvAaQB/wGBAecBmAH/AXsB5AGN
        Af8BSQICAYQMAAFXAgIBsQGVAYsBhQH/Ab0BgQFpAv8BzgGtAv8B3AHFAf8B0wGgAYcB/wHMAZQBgQL/
        AdYBvQL/AccBpwH/AbYBgQFhAf8BlQGOAYsB/wFTAgIBpBAAAT4CAQFnAaABnQGcAf8BKAE9AUMB/wFh
        AZwBxwH/AUMBgQGHAf8BQgGBAY0B/wE6AYEBlQH/ATQBgQGcAf8BJgFCAV0B/wFiAgMB1AFDAgEBdAFA
        AgEBbQFBAgEBcQEUAgEBGgQAAV0BEgElAfgBKgGbAv8BKAGaAv8BJwGgAv8BKQGqAv8BXwIFAeIMAAEo
        AgEBOwFNAgIBkQFLAgIBiwEiAgEBLwwAASECAQEtAVwBxAGBAf8BgQH2AagB/wGBAfQBrAH/AYEB4gGY
        Af8BcAGhAYAB/wG0AdUBtQH/AbIB1AGyAf8BagGfAXwB/wGBAeYBnAH/AYEB8wGrAf8BgQH4AaoB/wFM
        Aa4BcgH/AQ0CAQEQCAABJAIBATMDgQH/AagBgAFaAv8BuwGWAf8BzQGiAYwB/wHqAa0BjwH/AeMBrgGS
        Af8B4QGrAY8C/wHJAa8C/wG8AZsC/wGyAYwB/wGiAX0BWAH/A4EB/wEcAgEBJQwAAWQCDgH2AUgBSgFL
        Af8BKQGBAaUB/wFnAVkBUgH/A4EB/wFYAaIBcgH/AWUBuwGBAf8BZQG6AYEB/wFmAb8BgQH/AWcBwwGB
        Af8BZAHGAYEB/wN7Af8BegJ5Af8IAAE1AgEBVAEoAYEB7wH/ASkBqQL/ATUBsAL/AUcBwAL/AV4CAwHJ
        CAABQAIBAW0BPgGdAfkB/wE0AbkC/wEoAa0C/wEoAYQB9gH/ATwCAQFkDAABLwIBAUgBLAFVASoB/AGB
        AfgBpwH/AXQBpgGBAf8B6QHbAeMB/wGBAZQBsQH/AYIBlAGyAf8B6wHcAeUB/wFuAaYBfwH/AYEB9QGl
        Af8BYAIKAfIBIwIBATEMAAFRAgIBnAGKAoEB/wHgAYgBgQH/AfcBpwGBAv8B4QHOAf8BygGwAaYB/wHb
        AZYBgQL/Ac8BswL/Ab8BnwH/AfwBsgGOAf8B9QGmAYEB/wHYAYEBegH/AYcCgQH/AU0CAgGPCAABPwIB
        AWkDgQH/AT4BgQGQAf8BOwGBAZ8B/wGBAYABfwH/AToBYAFGAf8BgQHjAZAB/wGBAdUBiAH/AYEB1QGI
        Af8BgQHVAYgB/wGBAdsBjAH/AWMBjQF8Af8DgQH/AVMCAgGmDAABFQIBARsBQAIBAW0BWAICAboBbQHb
        Av8BVwICAbEIAAFhAgcB6wFqAdUC/wFSAb8C/wE5AbAC/wEoAaoC/wFWARUBLQH5EAABBwIBAQcBRgIB
        AX0BXQIGAeoBXQGBAcQB/wGBAZYB3gH/AYEBlgHeAf8BXQGBAcQB/wFjAgYB6QFDAgEBdRQAAWACAwHT
        AZ0BgQF3Af8BxwGBAWsB/wHCAYEBcwH/AdwBiwGBAv8B6wHcAf8B3AHPAckB/wHZAYcBfQL/AbcBkQH/
        AfUBpgGBAf8BuAGBAWgB/wHNAYEBbQH/AZoBgQF8Af8BXAIDAcYIAAFhAgMBzgFcAVIBTQH/AYEB2wL/
        ATUBVgFkAf8BZQFcAV8B/wGBAbgBhQH/AZIB+wG3Af8BjwH2AbMB/wGPAfYBswH/AY8B9gGzAf8BlQH/
        AbsB/wFQAXQBXQH/AWwBaAFrAf8BNwIBAVgUAAFLAgIBjAGBAfgC/wFPAgIBmAgAAV8CAwHSAYEB8AL/
        AW8B0QL/AVUBwgL/ATYBswL/AT4BHwFHAfsUAAEEAgEBBAFbAQwBDwH1AYYBtwHzAf8BgwG3AfEB/wGE
        AbcB8gH/AYcBuAH0Af8BZAEOARYB9gEHAgEBCBQAAWMCBAHfAakBgQF4Af8BswGBAVgB/wGaAXUBTgH/
        AbkBgQFrAf8B8QGaAYEB/wH5AesB5QH/AUwBeQHBAf8B2gGBAW8B/wHuAZkBgQH/AagBgQFZAf8BvwGB
        AVwB/wGlAYEBfQH/AWACAwHTBAABBQIBAQUBUgFPAU0B/wFPAXMBgQH/ASYBbgGBAf8BagJnAf8BfwF6
        AXwB/wE3AXYBSQH/ATsBcgFLAf8BOwFyAUsB/wE7AXIBSwH/ATsBcgFLAf8BOgF1AUwB/wFHAUsBSAH/
        A4EB/wESAgEBFxQAAVQCAgGnAY4D/wFIAgIBgQgAAR4CAQEoAVsBDAEPAfUBeAHKAf0B/wFhAbwB+QH/
        AUkBvgL/AWECBAHeFAABRgIBAX0BhQG5AfgB/wGLAcIB9wH/AY8ByAH7Af8BkAHIAf0B/wGMAcMB+AH/
        AYcBvAH6Af8BSAICAYAUAAFfAgMBwwGwAYQBgQH/AckBgQFZAf8B0wGBAXIB/wHYAYEBewH/Ad8BigGB
        Af8B6QGLAX0B/wFlAXsBtgH/ATIBWgGqAf8B3gGBAV0B/wHVAYEBcAH/AccBgQFUAf8BsQGKAYEB/wFX
        AgIBtgQAAScCAQE4AYEBfQF6Af8BRQGBAZ0B/wFEAcAC/wOBAf8BXgFqAWIB/wFuAdQBgQH/AW0BygGB
        Af8BbQHKAYEB/wFtAcoBgQH/AW0BygGBAf8BbAHTAYEB/wOBAf8BTAI/Af0YAAFaAgIBvgGaA/8BPwIB
        AWkQAAEtAgEBRAFQAgIBmgFWAcMC/wFaAgMBwhQAAVoCAgG+AZMBygL/AZkBzwH+Af8BpwHWAv8BqAHW
        Av8BnQHSAf4B/wGVAc0C/wFaAgMBwRQAAUYCAQF8AdABwwG9Af8BrgFyAUAB/wHGAYEBVwH/AcsBgQFk
        Af8B0QGBAWwB/wHQAYEBZQH/AeUBgQFVAf8BgQF/AZMB/wFOAWEBkgH/AcoBgQFLAf8BrAF0AUMB/wHM
        AcQBvwH/AUECAQFuBAABOQIBAV0BkwGLAYgB/wFfAaMB0QH/AWUBvQH3Af8BVAFIAUUB/wFNAWUBVQH/
        AYEB5wGXAf8BgQHbAZAB/wGBAdsBkAH/AYEB2wGQAf8BgQHbAZAB/wGBAekBlwH/AU8BRQFMAf8BYQIE
        Ad4YAAFhAgQB1gGWAeoC/wEyAgEBTRQAAUYCAQF9AWcB3QL/AVICAgGlFAABXQIDAcwBnQHUAv8BrwHZ
        Av8BwQHiAv8BwwHiAv8BsgHbAv8BoAHWAv8BXgIDAc8UAAEJAgEBCgGYAZ8BowH/AbQCgQH/AcsBgQFr
        Af8BxAGBAVwB/wG/AX4BSgH/AeMBuQGiAf8B8gHhAdkB/wHOAX8BOwH/A4EB/wHDAYEBdwH/AbsBhgGB
        Af8BgAJ/Af4BAwIBAQMEAAEKAgEBCwFDAgEBdAFkAgUB5AFmAZEBsgH/AVsBUwFSAf8BWAFqAV4B/wGH
        AeABpwH/AYEB1QGfAf8BgQHVAZ8B/wGBAdUBnwH/AYEB1QGfAf8BhwHiAacB/wFVAU0BUgH/AV4CBAHX
        GAABXAIIAe8BtQP/AWECBQHjAUECAQFwASICAQEvAQoCAQEMBAABBwIBAQgBVwICAbYBagHfAv8BSwIC
        AYkUAAFWAgIBrAGrAd8C/wHBAeEC/wHaAe4C/wHdAe8C/wHFAeMC/wGxAeEC/wFWAgIBrxgAATsCAQFg
        Ac0B0gHUAf8BsAGBAXkB/wHLAYEBfwH/AdoBiwGBAf8B+AHnAd8B/wHrAcEBrAH/AdwBkAGBAf8BzwGB
        AXoB/wG1AYEBfwH/AcYBzAHPAf8BNAIBAVIUAAEqAgEBPgOBAf8BZQFwAWkB/wE2AYEBUAH/ATkBgQFR
        Af8BOQGBAVEB/wE5AYEBUQH/ATkBgQFRAf8BOAGBAVIB/wOBAf8BZAIOAfYYAAFlAZ0B5QH/AaQB+wL/
        AckD/wHRAfoC/wGYAcwB9AH/AYEBtAHrAf8BeQGlAeYB/wFtAakB6gH/AXMBxwH4Af8BWwHJAv8BQAIB
        AW0UAAE1AgEBUwGVAcoB/gH/AcwB6AL/AewB9gL/AfEB+AL/AdEB6gL/AZwBzgL/ATYCAQFXHAABQQIB
        AW4BswG6Ab0B/wHaAb4BrwH/AboCgQH/AbUBgQFrAf8BtwGBAXAB/wG7AoEB/wHaAcEBtAH/Aa0BswG4
        Af8BOgIBAV8cAAFbAgwB9QF6AXwBewH/AXUB2QGBAf8BdQHOAYEB/wF1Ac4BgQH/AXUBzgGBAf8BdwHV
        AYEB/wFSAYEBaAH/AzYB/wEzATIBMwH/AR4CAQEpEAABCgIBAQwBawGuAfAB/wGQAfkC/wGiAfMC/wGx
        AfYC/wG1AfkC/wGoAfkC/wGQAfgC/wGBAekC/wF0AdUC/wFNAbQB/gH/ATQCAQFRGAABXAIDAcsByQHq
        Av8B6gH3Av8B7AH6Av8BzgHuAv8BWwIDAc0kAAEZAgEBIQFVAgIBqgGWAVEBUwH9AasBsQG0Af8BrAGz
        AbYB/wFuAiYB+QFTAgIBpgEWAgEBHCAAAVoCAgG+AVsBUgFYAf8BgQHWAY8B/wGBAecBmwH/AYEB5QGa
        Af8BgQHlAZoB/wGBAfEBogH/AVoBbwFhAf8BtwG1AbYB/wOBAf8BGgIBASMQAAEKAgEBCwFgAgYB6AGB
        AdYC/wGLAf4C/wGTAfoC/wGSAfgC/wGFAfQC/wGBAekC/wF9AdsC/wFiAc4C/wE9AaQB/AH/ASYCAQE3
        GAABAwIBAQIBUgICAZ8BfAGNAcwB/wF9AY4BzAH/AVMCAgGhAQMCAQEDLAABTQICAZIDxwH/A6UB/wE1
        AgEBUygAAUUCAQF4A4EB/wFUAYEBZQH/AXsBmAGBAf8BeQGUAYEB/wF6AZYBgQH/AW4BhQGBAf8BRwFC
        AUUB/wFkAhUB+QE7AgEBYRwAATUCAQFUAVYCAgGsAWACBgHoAU8BjgHYAf8BVAGaAd4B/wFPAZwB4AH/
        AT0BjwHfAf8BKgGBAdoB/wFcAgMB0wEIAgEBCWAAAT8CAQFqATYCAQFVLAABBgIBAQYBGAIBAR8BFwIB
        AR4BFwIBAR4BFwIBAR4BFwIBAR4BFwIBAR4BFAIBARo0AAEQAgEBEwEXAgEBHgESAgEBFhAAAUIBTQE+
        BwABPgMAASgDAAFAAwABIAMAAQEBAAEBBgABARYAA/8BAAH+AX8B/wGABAAB/AE/Af8FAAH4AR8B/AUA
        AfABDwH4BQAB4AEHAeAFAAHAAQMBgAUAAYABAREAAQEEAAHAAQMBAAEDBAAB4AEHAQABDwQAAfABDwEA
        AR8EAAH4AR8BwAE/BAAB/AE/AcABPwQAAf4BfwHAAX8EAAH+AX8C/wQAAYABAQH8AT8B8wH/AcMB/wGA
        AQEB8AEPAeABfwGBAf8BgAEBAeABBwHgAR8BgQH/AYABAQHAAQMBwAEAAYEBwwGAAQEBgAEBAcABAQKB
        AcABAwGAAQEBgAEBAcEBgQHgAQ8BgAEBAYABAQHxAYEB8AEPAYABAQEAAQEB8QGBAfABDwGAAQEBAAED
        AfEB4QHwAQ8BgAEBAQABAwLxAfABDwGAAQEBAAEDAfABIQHwAQ8BwAEDAeABAwHwAQEB8AEPAeABBwHw
        AQEB4AEBAfgBHwHwAQ8B8AEBAeABAQH4AR8B/AE/AfABAwH4AQEC/wH+AX8B8AEPAf8Bjws=
</value>
  </data>
  <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>250, 17</value>
  </metadata>
  <data name="tbHeader.ToolTip" xml:space="preserve">
    <value>The header can have three parts, separated by \t: everything before the first \t is left aligned; everything between the first and second \t is centered, and everything after the second \t is right aligned.</value>
  </data>
  <metadata name="listViewPrinter1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>122, 17</value>
  </metadata>
  <data name="label1.Text" xml:space="preserve">
    <value>Use this property grid to create a custom format for the report. To change the format, you need to modify the values in the "Appearance - Format" section or the "Appearance - Watermark" section. Changes to the other properties will be ignored.</value>
  </data>
  <metadata name="listViewPrinter2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>342, 17</value>
  </metadata>
</root>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Team Leader
Australia Australia
Phillip has been playing with computers since the Apple II was the hottest home computer available. He learned the fine art of C programming and Guru meditation on the Amiga.

C# and Python are his languages of choice. Smalltalk is his mentor for simplicity and beauty. C++ is to programming what drills are to visits to the dentist.

He worked for longer than he cares to remember as Lead Programmer and System Architect of the Objective document management system. (www.objective.com)

He has lived for 10 years in northern Mozambique, teaching in villages.

He has developed high volume trading software, low volume FX trading software, and is currently working for Atlassian on HipChat.

Comments and Discussions