Creating An Accounting Application With C#- Part Two

This article is the second part of the series of "Creating Accounting Application swith C#". If you have not read the first part, please have a look at it before continuing.

In the previous article, we discussed some fundamental accounting principles and about downloading and installing Visual Studio in the system. In this article, finally, we are starting the development.

Topics covered in this article

  1. Multiple Document Interface (MDI)
  2. MenuStrip
  3. ToolStrip
  4. ToolTip
  5. StatusStrip
  6. ContextMenuStrip

Multiple Document Interface

A Multiple Document Interface (MDI) is a graphical user interface in which multiple windows reside under a single parent window.  An example of MDI is given below.


While in the case of single document interface (SDI) where all windows are independent of each other, we get the SDI as given below.


In our project, the main window is the MDI Parent and most of the windows are MDI children. And we will also use SDI.

By default, a new window is in SDI format. For changing it to MDI, we need to modify the Form property isMdiContainer to True.


By adding the following code in Form Load event, you can change the form to MDI Container while running the application.

  1. private void Form1_Load(object sender, EventArgs e) {  
  2.     //For changing the form to MDI Container.  
  3.     this.IsMdiContainer = true;  
  4. }  

Menu Strip

You can drag and drop the MenuStrip control from ToolBox.


What is MenuStrip and for what purpose are we using this control?  In Windows Form applications, MenuStrip is used as the navigation menu. To open other forms (like Sales Invoice and Sales Return Invoice), we useMenuStrip. To know more about MenuStrip, please click on the link 

Add the following items to the MenuStrip.

Admin SettingsAccounts GroupSales InvoicePurchase InvoicePackingPayment
Company DetailsAccount CreationSales EstimatePurchase ReturnStock AdjustReceipt
Financial YearProduct GroupSales ReturnPurchase OrderDamage EntryBank Deposit
Selected FYProduct CreationSales OrderBill PrintStock TransferBank Withdrawal
Lock ApplicationBrandSales Quotation Product EditingJournal Entry
Log OffUnitSales View CombinationOpening Balance
ExitGodownBill Print Barcode DesignDebit Note
 Shelf   Credit Note
 Price Category   Bank Reconciliation
 Tax Category   Post Dated Check Receivable
 Route   Post Dated Check Payable
 Employee Details                  

ReportInventory ReportAccounts ReportToolsHelp
Sales ReportStock ReportAccounts LedgerCreate UserAbout
Sales Return ReportDamage Stock ReportCash BookChange PasswordApplication Settings
Purchase ReportExpiry Stock ReportDay BookUser PrivilegeVideo Tutorial
Purchase Return ReportGodown Stock ReportPayment RegisterCalculatorUser Manual
Sales Order ReportUnsold Product ReportReceipt RegisterMail SettingsContact Us
Sales Quotation ReportProduct Flow ReportJournal RegisterRemainderReport Bugs
Sales Estimate ReportProduct wise Sales ReportTrail BalanceCalendarActivation
Purchase Order ReportProduct wise Purchase ReportTrading Profit and Loss AccountSend Mail 
Party ListInventory Sales RegisterBalance SheetPrint Designer 
Price ListInventory Sales Return RegisterGST Sales ReportChange Database 
Account Payable And ReceivableInventory Purchase RegisterGST Purchase ReportDatabase Backup 
Transaction ReportInventory Purchase Return RegisterGST-R1 ReportDay Close              


Like MenuStrip, we want to use ToolStrip control in the main form of the application. You can drag and drop the same from ToolBox.


Please change RenderMode property of ToolStrip control System, unless the ToolStrip button gets hidden when the mouse is over it.  Add seven ToolStripButtons.  Details are below:

  • Sales
  • Purchase
  • Payment
  • Receipt
  • Ledger
  • Product
  • Stock Report
  • Calculator
  • Date Change
  • Send Mail
  • Bill Print
  • Lock Application
  • Refresh
  • About
  • Log Off
  • Minimize
  • Exit

You can change the background image of the button as shown in the picture by downloading it from the internet. To know more about ToolStrip control, please click the link.

ToolTip Control

After adding seventeen buttons to  theToolStrip menu, we have to add tooltip text to every button. 


In the picture, you can see the tooltip text given to the Calculator button. Now, let us see how we can apply this.

After dragging and dropping the tooltip control from the toolbox to the form, we have to change the tooltip text.


If you want to know more about this, please click the link.



After adding MenuStrip and ToolStrip, we have to add StatusStrip to our main form to show current date and time and logged in user. We can drag and drop the control from Tool Box.


To know more about StatusStrip, you can click the link


And also, we want to add ContextMenuStrip by dragging and dropping from Tool Box to the form.


Add five items to it

  • Refresh
  • Change Background Color
  • Change Background Image
  • Log Off
  • Exit


After adding the contextmenustrip to the form, please change the contextmenustrip property to the newly added one. Otherwise, this control may not work. If you want to know more about ContextMenuStrip, please click the link


I am not an expert in programming as well as accounting, however, I have some experience in the operation and creation of accounting software.  In this series, I am trying to convey some of my knowledge to you. If you find any mistake or have any suggestions, please feel free to share the same in the comment box.