Solved

Windows Form Controls

Posted on 2003-12-01
1
275 Views
Last Modified: 2010-04-16
I have some data from a database that I need to some how show on a form in a nice way... A little background:

I'm working on a home inventory system for my collection of junk so that if everything burns down I'll know what I used to have.. or if something get's stolen ( you get the idea)

I have a property table who's PK is propertyID, There is also a column in this table with referenceId that refers back to a valid propertyId in the same table.  My reasoning is that I may have a computer has one piece of property, but then later on I can add on a new video card, peripheral or something, And I wanted to make sure to note that this is a video card for my computer.. and not another server or something that I have in the house.

I don't understand tree controls but I need a way to display this data so that a user can use pick from a hierarchial list.

Any ideas or code samples would be great
0
Comment
Question by:jayrod
1 Comment
 
LVL 20

Accepted Solution

by:
TheAvenger earned 500 total points
ID: 9853985
Following is a short example from MSDN about TreeView. You can find much more in sites like www.codeproject.com. This may be interesting for you:

http://www.codeproject.com/cs/database/2dtreeview.asp?target=TreeView


// Create a new ArrayList to hold the Customer objects.
private ArrayList customerArray = new ArrayList();

private void FillMyTreeView()
{
   // Add customers to the ArrayList of Customer objects.
   for(int x=0; x<1000; x++)
   {
      customerArray.Add(new Customer("Customer" + x.ToString()));
   }

   // Add orders to each Customer object in the ArrayList.
   foreach(Customer customer1 in customerArray)
   {
      for(int y=0; y<15; y++)
      {
         customer1.CustomerOrders.Add(new Order("Order" + y.ToString()));    
      }
   }

   // Display a wait cursor while the TreeNodes are being created.
   Cursor.Current = new Cursor("MyWait.cur");
       
   // Suppress repainting the TreeView until all the objects have been created.
   treeView1.BeginUpdate();

   // Clear the TreeView each time the method is called.
   treeView1.Nodes.Clear();

   // Add a root TreeNode for each Customer object in the ArrayList.
   foreach(Customer customer2 in customerArray)
   {
      treeView1.Nodes.Add(new TreeNode(customer2.CustomerName));
         
      // Add a child treenode for each Order object in the current Customer object.
      foreach(Order order1 in customer2.CustomerOrders)
      {
         treeView1.Nodes[customerArray.IndexOf(customer2)].Nodes.Add(
           new TreeNode(customer2.CustomerName + "." + order1.OrderID));
      }
   }

   // Reset the cursor to the default for all controls.
   Cursor.Current = Cursors.Default;

   // Begin repainting the TreeView.
   treeView1.EndUpdate();
}
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question