Differences between revisions 11 and 23 (spanning 12 versions)
Revision 11 as of 2009-03-09 00:51:46
Size: 2600
Editor: 24-183-238-75
Comment:
Revision 23 as of 2014-04-22 23:06:41
Size: 443
Editor: scot
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
== Bible Beliefs Database Project ==
 1. Add the connection to the Data Connections in Server Explorer
 1. Add a data set item to the project. This is a nice gui place to create the data set. Drag and drop the tables on the page and you will build yourself a nice database diagram similar to what you would do in Visio.
 1. Next I added a DataGridView Object, bound it to the TopicTextViewOrdered and changed the column type to DataGridViewLinkColumn.
  1. Note the contextMenuStrip should be where we click to add a new belief possibly
  1. Turned TrackVisitedState to false.
  1. A BindingSource component is added at the bottom. Change the Sort Property to: TopicText ASC
 1. Double Clicked on DGV object to create a CellContentClick event handler. To start with I'll just do a MessageBox as shown in Section 1 of the code below
 1. Added another TableAdaptor for beliefs, as well as a BindingSource and BindingNavigator
  1. Have the TableAdaptor Fill the bibleDB [[DataSet|DataSet in on form load.]]
  1. Section 1 shows that we also will filter this binding source with the topic key.
 1. We then added a web browser control and a button to retrieve a verse from biblegateway.com
 1. NEXT: Make sure that data is persisted in the database.
Line 22: Line 9:
{{{
//Section 1: Accessing the selected value
if (Utilities.IsANonHeaderLinkCell(()sender, e))
 {
    int topicKey = (int)dgvTopics.Rows[e.RowIndex].Cells[0].Value;
    this.beliefsBindingSource.Filter = "TopicKey = " + topicKey;
 }
 * InformedPeopleApp
 * /BibleBeliefsProject
 * ArchaeologyProject
 * VirtualIpList
 * [[/Research]]
 * [[http://www.slideshare.net/planeviz/how-to-sell-your-airplane|How to sell your plane]]
Line 30: Line 16:
//Section 2: Utility Function used in Section 1
public static bool IsANonHeaderLinkCell(DataGridView dgv, DataGridViewCellEventArgs cellEvent)
{
    if (dgv.Columns[cellEvent.ColumnIndex] is DataGridViewLinkColumn && cellEvent.RowIndex != -1)
    { return true; }
    else { return false; }
}

//Section 3: Added to MainForm_Load to sort grid
this.dgvTopics.Sort(dgvTopics.Columns[1], ListSortDirection.Ascending);

//Section 4: filter verses based on belief row that is currently displayed - not easy to find!

private void txtBeliefsText_TextChanged(object sender, EventArgs e)
{
    //How to get other fields in the row currently displaying a field in a bound TextBox
    int newBeliefKey = (int)((DataRowView)beliefsBindingSource.Current).Row["BeliefKey"];
    this.versesBindingSource.Filter = "BeliefKey = " + newBeliefKey;
}
}}}
Line 51: Line 17:
 . [[scot/PasswordList]]  * [[scot/PasswordList]]

scot (last edited 2021-02-25 00:01:31 by scot)