private void DataGridCell_MouseDown(object sender, MouseButtonEventArgs e)
        {
            MouseEventArgs me = e as MouseEventArgs;

            if (me.RightButton == MouseButtonState.Pressed)
            {
                DataGridCell      temp          = sender as DataGridCell;
                DataGridRow       dataRow       = DataGridRow.GetRowContainingElement(temp);
                int               index         = dataRow.GetIndex();
                DataGridCellInfo  myInfo        = new DataGridCellInfo(SearchBody.Items[index], SearchBody.Columns[0]);
                SearchElements    tempEle       = myInfo.Item as SearchElements;
                char              row           = tempEle.row;
                int               column        = tempEle.column;
                string            ovenName      = tempEle.ovenName;
                ContextProperties newProperties = new ContextProperties(ovenName, row, column);
                newProperties.Show();
            }
        }
        private void SearchHelper(string ovenName, string values)
        {
            int row = Server.getRowSizeFromDB(ovenName);
            int col = Server.getColumnSizeFromDB(ovenName);

            for (int i = 0; i < row; i++)
            {
                for (int j = 0; j < col; j++)
                {
                    string containerTemp = Server.getContainerNums(ovenName, Conversions.intToChar(i), j);
                    string commentTemp   = Server.getComments(ovenName, Conversions.intToChar(i), j);
                    if (Search(containerTemp, values) > 0.8)
                    {
                        SearchElements newElement = new SearchElements();

                        /*
                         * TextBlock newText = new TextBlock();
                         * Run newRun = new Run(values);
                         * Hyperlink link = new Hyperlink();
                         * link.Click += Link_Click;
                         * newText.Inlines.Add(newRun);
                         * newText.Inlines.Add(link);
                         * newElement.containerNums = newText;
                         */
                        newElement.row    = Conversions.intToChar(i);
                        newElement.column = j;
                        newElement.containerNumsString = values;
                        newElement.locationID          = Conversions.intToChar(i).ToString() + j.ToString();
                        newElement.recipeName          = Server.getRecipeName(Server.getRecipeKey(ovenName, Conversions.intToChar(i), j));
                        newElement.ovenName            = ovenName;
                        DateTime[] limits = Server.getLimits(Conversions.progressionIDToArray(Server.getProgressionID(newElement.recipeName))[0]);
                        newElement.readyTime = Server.getStartTime(ovenName, Conversions.intToChar(i), j).Add(Conversions.DateTimeToTimeSpan(limits[0]));
                        elements.Add(newElement);
                        SearchBody.ItemsSource = elements;
                        SearchBody.Items.Refresh();
                    }
                    else if (Search(commentTemp, values) > 0.8)
                    {
                        SearchElements newElement = new SearchElements();

                        /*
                         * TextBlock newText = new TextBlock();
                         * Run newRun = new Run(values);
                         * Hyperlink link = new Hyperlink();
                         * link.Click += Link_Click;
                         * newText.Inlines.Add(newRun);
                         * newText.Inlines.Add(link);
                         * newElement.comments = newText;
                         */
                        newElement.row           = Conversions.intToChar(i);
                        newElement.column        = j;
                        newElement.commentString = values;
                        newElement.locationID    = Conversions.intToChar(i).ToString() + j.ToString();
                        newElement.recipeName    = Server.getRecipeName(Server.getRecipeKey(ovenName, Conversions.intToChar(i), j));
                        newElement.ovenName      = ovenName;
                        DateTime[] limits = Server.getLimits(Conversions.progressionIDToArray(Server.getProgressionID(newElement.recipeName))[0]);
                        newElement.readyTime = Server.getStartTime(ovenName, Conversions.intToChar(i), j).Add(Conversions.DateTimeToTimeSpan(limits[0]));
                        elements.Add(newElement);
                        SearchBody.ItemsSource = elements;
                        SearchBody.Items.Refresh();
                    }
                }
            }
        }