Ciao, per fornirti maggior dettagli sarebbe stato utile sapere anche in che linguaggio avresti intenzione di realizzare la tua textbox custom; cmq le tecniche sono varie e dipendono strettamente anche dal linguaggio che utilizzi ed in particolari dalle limitazioni che questi presenta;
in vb6 potresti ad esempio creare un controllo grafico personalizzato (direttamente un ocx con progetto a parte o un ctl nel tuo progetto ) in cui aggiungeresti tutte le proprietà/eventi/metodi di una textbox posta nell'area grafica del controllo; poi ti basterebbe gestire l'evento di "perdita del fuoco" da parte del controllo per aggiungere gli zeri che mancano alla dimensione massima raggiungubile dal testo inseribile nella textbox stessa;
in c#, vb.net ed in tutti i linguaggi .net ti basta ereditare dalla classe textbox ed estendere sempre l'evento di perdita del fuoco del controllo così come accennato prima per il vb6.
N.B. Nulla ti vieta di fare tutto questo lavoro direttamente sul controllo/i in questione andando a gestire direttamente gli eventi senza dover necessariamente creare un custom control; ovviamente questa strada è meno elegante e meno "riutilizzabile" rispetto alle altre.
P.S. se sei sul web e la tua esigenza è di fare la stessa cosa con un'input box, con il javascript puoi andare a gestire sempre il solito evento di perdita del fuoco del controllo e fare quello che ti serve.
In definitiva aggiungere gli zeri è semplice, mentre è meno intuitivo come "fare" per gestire il tutto e ritrovarsi un qualcosa che poi potrò riutilizzare nel tempo.
Spero di esserti stato di aiuto..