/// <summary>
        /// Method to update row with update values
        /// </summary>
        /// <param name="editedMeasurePropertyFairValueRow">Update Value</param>
        private void UpdateRowAssociatedWithSource(FairValueData editedMeasurePropertyFairValueRow)
        {
            string methodNamespace = String.Format("{0}.{1}", GetType().FullName, System.Reflection.MethodInfo.GetCurrentMethod().Name);

            Logging.LogBeginMethod(logger, methodNamespace);
            try
            {
                if (editedMeasurePropertyFairValueRow != null)
                {
                    var item = FairValueCompositionData.FirstOrDefault(i => i.Source == editedMeasurePropertyFairValueRow.Source);

                    if (item != null)
                    {
                        item.Buy       = 0;
                        item.Sell      = 0;
                        item.Upside    = null;
                        item.Date      = DateTime.Now;
                        item.IsUpdated = true;
                    }
                }
            }
            catch (Exception ex)
            {
                Prompt.ShowDialog("Message: " + ex.Message + "\nStackTrace: " + Logging.StackTraceToString(ex), "Exception", MessageBoxButton.OK);
                Logging.LogException(logger, ex);
            }
        }
        private void dgFairValueComposition_CellEditEnded(object sender, GridViewCellEditEndedEventArgs e)
        {
            if (e.Cell.Column.UniqueName == "Sell")
            {
                FairValueData data = e.Cell.DataContext as FairValueData;

                if (data != null && DataContextFairValueComposition != null)
                {
                    DataContextFairValueComposition.EditedSellPropertyFairValueRow = data;
                }
            }
            if (e.Cell.Column.UniqueName == "Buy")
            {
                FairValueData data = e.Cell.DataContext as FairValueData;

                if (data != null && DataContextFairValueComposition != null)
                {
                    DataContextFairValueComposition.EditedSellPropertyFairValueRow = data;
                }
            }
        }
        /// <summary>
        /// Gets called when combob selection changes
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        void ComboSelectionChanged(object sender, RadRoutedEventArgs args)
        {
            RadComboBox comboBox = (RadComboBox)args.OriginalSource;

            var row = comboBox.ParentOfType <GridViewRow>();

            if (row != null)
            {
                FairValueData data = row.DataContext as FairValueData;

                if (comboBox.SelectedValue != null)
                {
                    if (data.DataId != Convert.ToInt16(comboBox.SelectedValue))
                    {
                        data.DataId  = Convert.ToInt16(comboBox.SelectedValue);
                        data.Measure = comboBox.Text;
                        DataContextFairValueComposition.EditedMeasurePropertyFairValueRow = data;
                    }
                }
            }
        }
        /// <summary>
        /// method to get the updated upside value for edited Fair Value Row
        /// </summary>
        /// <param name="editedFairValueRow"></param>
        private void RetrieveInstanceWithUpdatedUpsideValue(FairValueData editedFairValueRow)
        {
            string methodNamespace = String.Format("{0}.{1}", GetType().FullName, System.Reflection.MethodInfo.GetCurrentMethod().Name);

            Logging.LogBeginMethod(logger, methodNamespace);
            try
            {
                if (securitySelectionData != null && editedFairValueRow != null)
                {
                    Logging.LogMethodParameter(logger, methodNamespace, securitySelectionData, 1);

                    FairValueCompositionSummaryData editedData = new FairValueCompositionSummaryData()
                    {
                        Source  = editedFairValueRow.Source,
                        Measure = editedFairValueRow.Measure,
                        Buy     = editedFairValueRow.Buy,
                        Sell    = editedFairValueRow.Sell,
                        Upside  = editedFairValueRow.Upside,
                        Date    = editedFairValueRow.Date,
                        DataId  = editedFairValueRow.DataId,
                    };
                    dbInteractivity.RetrieveFairValueDataWithNewUpside(securitySelectionData, editedData,
                                                                       RetrieveFairValueDataWithNewUpsideCallbackMethod);
                    BusyIndicatorStatus = true;
                }
                else
                {
                    Logging.LogMethodParameterNull(logger, methodNamespace, 1);
                }
            }
            catch (Exception ex)
            {
                Prompt.ShowDialog("Message: " + ex.Message + "\nStackTrace: " + Logging.StackTraceToString(ex), "Exception", MessageBoxButton.OK);
                Logging.LogException(logger, ex);
            }
        }