As Neil has astutely observed, the code that I described in my previous posts does not have an implementation of the 'Model' part from the Model-Viewer-Controller pattern. The main reason for this is that .NET CF provides many choices in implementing it (typed DataSets, typed ResultSets, custom business objects) as well as different means for retrieving the data for the Model (local data store - SQL Server CE, remote data store via web services etc...). So I thought that it should be left to developers themselves to decide on how to implement the Model, business rules and data access layer.