private void FindReferencesButtonClick()
        {
            try
            {
#if DENALI || SQL2014
                packageDesigner = (ComponentDesigner)variablesToolWindowControl.GetType().GetProperty("PackageDesigner", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.GetProperty | System.Reflection.BindingFlags.FlattenHierarchy | System.Reflection.BindingFlags.Instance).GetValue(variablesToolWindowControl, null);
#else
                packageDesigner = (ComponentDesigner)variablesToolWindowControl.GetType().InvokeMember("PackageDesigner", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.GetProperty | System.Reflection.BindingFlags.FlattenHierarchy | System.Reflection.BindingFlags.Instance, null, variablesToolWindowControl, null);
#endif

                if (packageDesigner == null)
                {
                    return;
                }

                Package package = packageDesigner.Component as Package;
                if (package == null)
                {
                    return;
                }

                int selectedRow;
                int selectedCol;
                grid.GetSelectedCell(out selectedRow, out selectedCol);

                if (selectedRow < 0)
                {
                    return;
                }

                Variable variable = GetVariableForRow(selectedRow);

                if (variable == null)
                {
                    return;
                }

                FindVariableReferences dialog = new FindVariableReferences();
                //dialog.EditExpressionSelected += new EventHandler<EditExpressionSelectedEventArgs>(findReferences_EditExpressionSelected);

                dialog.Show(package, variable);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\r\n\r\n" + ex.StackTrace);
            }
        }
예제 #2
0
            private void FindReferencesButtonClick()
            {
                try
                {
                    ComponentDesigner packageDesigner = (ComponentDesigner)variablesToolWindowControl.GetType().GetProperty("PackageDesigner", BindingFlags.NonPublic | BindingFlags.GetProperty | BindingFlags.FlattenHierarchy | BindingFlags.Instance).GetValue(variablesToolWindowControl, null);
                    if (packageDesigner == null)
                    {
                        return;
                    }

                    Package package = packageDesigner.Component as Package;
                    if (package == null)
                    {
                        return;
                    }

                    int selectedRow;
                    int selectedCol;
                    grid.GetSelectedCell(out selectedRow, out selectedCol);

                    if (selectedRow < 0)
                    {
                        return;
                    }

                    Parameter parameter = GetParameterForRow(selectedRow);
                    if (parameter == null)
                    {
                        return;
                    }

                    FindVariableReferences dialog = new FindVariableReferences();
                    dialog.Show(package, parameter);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message + "\r\n\r\n" + ex.StackTrace);
                }
            }