![]() |
Platforms, Frameworks & Libraries »
.NET Framework »
Applications
Beginner
License: The Code Project Open License (CPOL)
Simple Query Tool to Extract Data from DatabaseBy Mohammad Hamed AkhterThis is a simple user friendly query tool which helps end-users to extract data from the database. The UI looks similar to query windows in Team Foundation Server, this is a modest beginning which can be enhanced and used more effectively. |
C#, .NET, ADO.NET, Dev
|
|
Advanced Search Add to IE Search |
|
|
|
||||||||||||||||
The are various ways to design a UI that helps users to extract specific information from the database. This tool whose UI design is similar to the queries windows in TFS helps users to extract specific data by helping the user to create or form a query.
This idea is similar to the query tools available in SQL server and TFS, but it is customized to the user's needs.
The Query tool hosts various controls in the grid, which get added on the fly while the user clicks through each of the cells, but still makes sure the user doesn't end up creating a garbled query.
Event based Asynchronous programming is done in case the query execution turnaround time is more, so for good user experience a progress bar is added to show the user that the query is been processed.
Interesting articles would be the following ones from MSDN:
How to: Host Controls in Windows Forms DataGridView Cells
This tools hosts Calender, ComboBox and Treeview controls in a ComboBox.
How to: Wrap a Windows Forms Control with ToolStripControlHost
Safe, Simple Multithreading in Windows Forms
//
// Hosting the Controls in the Grid View
//
public class CalendarColumn : DataGridViewColumn
{
}
public class CalendarCell : DataGridViewTextBoxCell
{
}
class CalendarEditingControl : DateTimePicker, IDataGridViewEditingControl
{
}
//
// Asynchronous Programming to Update the UI
//
class ShowProgressDelegate : MulticastDelegate {
public void Invoke(int digits);
public void BeginInvoke(string txtDisplay, AsyncCallback callback,
object asyncState);
public void EndInvoke(IAsyncResult result);
}
public class ToolStripControlHost : ToolStripItem
While developing the tool, it helped me in learning the various properties of control, hosting those controls in the grid view and do asynchronous programming.
This is just a fast track beginning, the future release would include all the fixes and an additional feature to group the clause.
General
News
Question
Answer
Joke
Rant
Admin
|
PermaLink |
Privacy |
Terms of Use
Last Updated: 9 Oct 2008 Editor: Deeksha Shenoy |
Copyright 2008 by Mohammad Hamed Akhter Everything else Copyright © CodeProject, 1999-2009 Web21 | Advertise on the Code Project |