예제 #1
0
 public static void loadSourceCodeMappings(DataGridView targetDataGridView)
 {
     targetDataGridView.invokeOnThread(
         () =>
             {
                 targetDataGridView.Columns.Clear();
                 O2Forms.addToDataGridView_Column(targetDataGridView, "replaceThisString", -1);
                 O2Forms.addToDataGridView_Column(targetDataGridView, "withThisString", -1);
                 var scmSourceCodeMappings = getSourceCodeMappings();
                 foreach (SourceCodeMappingsMapping mMapping in scmSourceCodeMappings.Mapping)
                 {
                     O2Forms.addToDataGridView_Row(targetDataGridView, null,
                                                   new object[]
                                                       {mMapping.replaceThisString, mMapping.withThisString});
                 }
             });
 }
예제 #2
0
        public static void loadInDataGridView_textSearchResults(List<TextSearchResult> currentSearchResults,
                                                                DataGridView dgvTargetDataGridView)
        {
            dgvTargetDataGridView.invokeOnThread(
                () =>
                    {
                        var iMaxRowsToLoad = 500;
                        dgvTargetDataGridView.Columns.Clear();
                        O2Forms.addToDataGridView_Column(dgvTargetDataGridView, "path", 50);
                        O2Forms.addToDataGridView_Column(dgvTargetDataGridView, "file", 50);
                        O2Forms.addToDataGridView_Column(dgvTargetDataGridView, "line #", 50);
                        O2Forms.addToDataGridView_Column(dgvTargetDataGridView, "match text", 100);
                        O2Forms.addToDataGridView_Column(dgvTargetDataGridView, "match line", -1);
                        foreach (TextSearchResult searchResult in currentSearchResults)
                        {
                            O2Forms.addToDataGridView_Row(dgvTargetDataGridView, searchResult,
                                                          new[]
                                                              {
                                                                  Path.GetDirectoryName(searchResult.sFile),
                                                                  Path.GetFileName(searchResult.sFile),
                                                                  searchResult.iLineNumber.ToString(),
                                                                  searchResult.sMatchText,
                                                                  searchResult.sMatchLine.Trim()
                                                              });
                            if (dgvTargetDataGridView.Rows.Count > iMaxRowsToLoad)
                            {
                                DI.log.error("Aborting, MaxRowsToLoad reached: {0}", iMaxRowsToLoad);
                                return;
                            }
                        }

                        // ReSharper disable PossibleNullReferenceException
                        dgvTargetDataGridView.Columns["path"].Width = 20;
                        dgvTargetDataGridView.Columns["line #"].Width = 40;
                        // ReSharper restore PossibleNullReferenceException


                    });

        }
        public void executeMethodAndOutputResultInTextBoxOrDataGridView(MethodInfo mMethod, Object[] aoParams,
                                                                        Object oLiveInstanceOfObject,
                                                                        TextBox tbTextBox_Results,
                                                                        DataGridView dgvDataGridView_Results)
        {
            try
            {
            
            object oInvocationResult = mMethod.Invoke(oLiveInstanceOfObject, aoParams);
            dgvDataGridView_Results.invokeOnThread(
                () =>
                    {
                        try
                        {
                            //Type tMethodTye = mMethod.ReflectedType;

                            //Reflection.invokeMethod_InstanceStaticPublicNonPublic();
                            
                            tbTextBox_Results.Visible = false;
                            if (dgvDataGridView_Results != null)
                                dgvDataGridView_Results.Visible = false;
                            if (null == oInvocationResult)
                            {
                                tbTextBox_Results.Text = String.Format("Info: Method {0} executed sucessfull",
                                                                       mMethod.Name);
                                tbTextBox_Results.Visible = true;
                            }
                            else
                            {
                                switch (oInvocationResult.GetType().FullName)
                                {
                                    case "System.Data.DataTable":
                                        if (dgvDataGridView_Results != null)
                                        {
                                            dgvDataGridView_Results.DataSource = oInvocationResult;
                                            dgvDataGridView_Results.Visible = true;
                                        }

                                        break;
                                    case
                                        "System.Collections.Generic.List`1[[System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]"
                                        :
                                        var lResults = (List<String>) oInvocationResult;
                                        if (lResults.Count == 0)
                                            String.Format("Info: the List<String> returned had no items");
                                        else
                                        {
                                            tbTextBox_Results.Text = "";
                                            foreach (String sLine in lResults)
                                                tbTextBox_Results.Text += sLine;
                                        }
                                        tbTextBox_Results.Visible = true;

                                        break;
                                    default:
                                        tbTextBox_Results.Text = oInvocationResult.ToString();
                                        tbTextBox_Results.Visible = true;
                                        break;
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            DI.log.ex(ex,
                                      "Invocaton Error in (GUI thread)executeMethodAndOutputResultInTextBoxOrDataGridView for method: " +
                                      mMethod.Name);
                            tbTextBox_Results.Text = ex.Message;
                            if (ex.InnerException != null)
                            {
                                DI.log.ex(ex, "   InnerException + " + ex.InnerException.Message);
                                tbTextBox_Results.Text += Environment.NewLine + "    InnerException:" +
                                                          ex.InnerException.Message;
                            }
                        }
                    });
            }
            catch (Exception ex)
            {
                DI.log.ex(ex, "Invocaton Error in (MTA thread)executeMethodAndOutputResultInTextBoxOrDataGridView for method: " +
                                                      mMethod.Name);
            }
        }
        public Object[] getParameterObjectsFromDataGridColumn(DataGridView dgvDataGridViewWithData,
                                                              String sColumnWithParameters)
        {
            return (object[])dgvDataGridViewWithData.invokeOnThread(
                () =>
                    {
                        var aoParams = new Object[dgvDataGridViewWithData.Rows.Count];
                        try
                        {
                            for (int i = 0; i < dgvDataGridViewWithData.Rows.Count; i++)
                            {
                                Object oParameterTag = dgvDataGridViewWithData.Rows[i].Cells[sColumnWithParameters].Tag;
                                if (null != oParameterTag && ("System.RuntimeType" == oParameterTag.GetType().FullName))
                                {
                                    switch (((Type) oParameterTag).FullName)
                                    {
                                        case "System.Boolean":

                                            aoParams[i] = "true" ==
                                                          (String) dgvDataGridViewWithData.Rows[i].Cells["Value"].Value;
                                            break;
                                        case "System.Int32":
                                            aoParams[i] =
                                                Int32.Parse(
                                                    dgvDataGridViewWithData.Rows[i].Cells["Value"].Value.ToString());
                                            break;
                                        case "System.UInt32":
                                            aoParams[i] =
                                                UInt32.Parse(
                                                    dgvDataGridViewWithData.Rows[i].Cells["Value"].Value.ToString());
                                            break;
                                    }
                                }
                                else
                                    aoParams[i] = dgvDataGridViewWithData.Rows[i].Cells["Value"].Value;
                            }
                        }
                        catch (Exception ex)
                        {
                            DI.log.ex(ex, "in getParameterObjectsFromDataGridColumn: {0}");
                        }
                        return aoParams;
                    });
        }