Here’s pretty much the same component shown last Friday in a form app that collects handwritten information, recognizes it, and then populates a grid. The program was inspired by a notebook that I saw used at a local Home Depot’s return counter. Turns out some items aren’t in their system, so they handwrite values which are later keyed into a computer. Seemed like a good Tablet program waiting to be written.
Uh, don’t think this is a finished app. It’s not. It’s a proof of concept app–which is somewhere between a thought and an alpha version. Editing, toolbars, persisting ink, showing ink in the grid, and so on are all missing. File this under “Exploration.”
A couple things I learned: Editing is important. My form/field tool is lacking here and it’s noticeable. Entering something like a SKU or customer number can be error prone so I really need to provide instant feedback as values are entered.
I also have been tripped up on what to do about persisting ink. Saving the grid values to a CSV file is straightforward. However, I guess I’m going to have to craft another file format that combines both recognized values and ink. Currently, when you close the app, the ink is gone, which is not very useful.
I’ve had the same type of issues. I finally wrote a library that persists strokes and associated text / values /whatever to XML, then loads it back into ink controls I’m using Ink.Save() and base64. I’m currently playing around with also GZIPing the stroke data to see if I can keep the XML files down in size.
It definately is an issue. If you don’t come up with something better quickly (you do some cool things), I’ll release it like I did my second-rate textbox controls — on my blog (http://philiprieck.com/blog/archive/2004/01/21/TabletTextBox.aspx)
There used to be a sample application at TabletPCDeveloper demoing square grid form fields. It has some rough edges but gives a fair balance between continous ink and accuracy of text by forcing you write into grids, though you can write continously and recognized text would be displayed (instant feedback) while you move onto the next grid. It provides some forms of editing by letting you click away or sratach away the text. As you suggested, entering something like a SKU can be so much error prone and time consuming for checking without instant feedback and accessible editing. That control seems leaving out ink persistence totally.
I guess, how an input control should be designed really depends on how much convenience it offers to a particular application at hand.
Very hard to dig it out from GotDotNet :(, but it is here http://www.gotdotnet.com/Community/UserSamples/Det
ails.aspx?SampleGuid=E2D54DE9-C018-4AA3-AB40-73C76CC352BB