DataBind and Multiviews

If you are using a multiview in asp to display a bunch of different pieces of information, for example if you are displaying a bunch of logs that are selectable inside your multiview (using the tabbed control I posted here recently), you need to be careful about how you display the data.  The way that…


GDF Xml file format

The GDF file is an xml file associated with games in vista.  The file gives information about the various ratings associated with the game along with the name of the game.  The XML file format is fairly simple and is as follows:<GameDefinitionFile>    <GameDefinition>        <Version>            <VersionNumber versionNumber=”x.y.y.y” />        </Version>    <Name>name of game</Name>    <GameExecutables>        <GameExecutable path=”xyz.exe” />       …


How to turn on debug exceptions with WCF

It is possible to see exceptions passed back in the messages sent to the service.  This makes it a lot easier to debug multi-peer applications.  The way to do this is to add into the web.config file the section.  You can see in the following config section that the behavior <serviceDebug includeExceptionDetailInFaults=”true” /> is defined, this…


Tabbed menu system for

This is a piece of code to deal with tabbed browing, it uses a CompositeControl to deal with creating the tabs and the views. The tabs are created using a simple table setup with the different td elements using different css classes to change the way each of the elements looks. The class is easily…



I was looking around at ways to optimise over the last few days and ran across this article about using ROW_NUMBER(), which is quite good.  There were a few aspects of it missing that I had to do a little more work to look up.  I tracked down some things on msdn that pointed…


FileVersionInfo - getting the FileDescription in C#

Getting the file description in C# requires using the VerQueryInfo calls to load in the data from the file.  First you load in the culture information so you get the information in the right language and then you load the actual data into the buffer.  To do this you need to call a couple of external…


.net Binding for WPC Events

The WPC event system logs a series of events to the WPC crimson channel.  The channel contents is viewable inside the log viewer and it has a path of: Microsoft-Windows-ParentalControls/Operational.  The events are logged with a variety of different parameters, mostly you can see what they are from inside the event viewer itself.  Of the…


Atlas, ContentPanel and controls

I discovered, while trying to use atlas contentpanels in my app, that the bits inside the atlas content panels are not loaded along with the normal load process.  This means if you have a PageLoad event in your custom control and you try and set something inside the ContentPanel it is not created yet.  To…


PaginatedRepeater in

The Paginated repeater is an extension of the standard repeater to add in pagination capabilities.  It is does it by wrapping the datasource with the PagedDataSource, which is a data source wrapper available in   I added in a NumberOfPagesToShow attribute, which determines how many of the numbers to show at the top of control…


Reading in Crimson Logs

Crimson logs can be read in through c# by use of some bindings to the APIs.  Crimson is a new logging protocol in Windows Vista. I will start by including all the bindings to the actual apis, then talk about the specific classes than can wrap around them to get useful information out of Crimson….