查找用于分配变量的函数(通过分配的变量)

时间:2010-01-20 06:18:33

标签: c# .net winforms

我有一个函数 GetControlRectangle(Rectangle MethodRect) ,它接受控件的矩形。

现在我编写像 Rectangle rct = dataGridView1.GetCellDisplayRectangle(1,0,false); 这样的代码,它找到了单元格的位置(1,0) datagridview1

我将 rct 传递给方法 GetControlRectangle

现在如何通过 MethodRect (这是方法中的参数)找到哪个函数用于获取此矩形点,如 GetCellDisplayRectangle() GetColumnDisplayRectangle() 。因为我想知道方法 GetControlRectangle() ,这一点适用于列标题单元格,它是对于细胞,然后是哪个细胞。

简而言之,我想知道通过变量使用了哪个函数,该变量被赋值为 Rectangle rct = dataGridView1.GetCellDisplayRectangle(1,0,false); 我想知道用于分配这个变量的函数。

2 个答案:

答案 0 :(得分:1)

如果正确理解,他应该修改GetControlRectangle(Rectangle MethodRect)函数,使其看起来像GetControlRectangle(Rectangle MethodRect, bool IsHeader),然后让调用代码做出决定“哪个函数是称为”。

答案 1 :(得分:0)

如果我理解正确,您需要将 rct 转换为getter / setter对。在setter中,创建一个新的System.Diagnostics.StackTrace()(只需调用ToString()方法以获得可读的表示)。它将包含调用堆栈,在本例中是为 rct 设置新值的函数。

像这样的东西(用更合适的处理替换异常):

Rectangle _rct=null;
Rectangle rct {
  get { return _rct; }
  set {
    throw new Exception(new System.Diagnostics.StackTrace().ToString());
    //_rct=value;
  }
}