我正在尝试处理从MenuItem.Click
引发的事件。问题是,我需要一些方法来传递一些自定义参数(具体来说,两个整数代表行和列)。
private void Window_Loaded(object sender, RoutedEventArgs e)
{
...
MenuItem froNewChild = new MenuItem();
froNewChild.Header = "Insert new box";
froNewChild.Click += new RoutedEventHandler(froNewChild_Click);
// froNewChild.Click += new RoutedEventHandler(froNewChild_Click, column, row);
FlowRectangleOptions.Items.Add(froNewChild);
...
}
private void froNewChild_Click(object sender, RoutedEventArgs e) //+column & row
{
FlowDocument.allColumns[column-1].AddFlowRectangle(column, row);
FlowDocument.ReRenderAll(canvas1);
}
这个答案Passing arguments to an event handler似乎按我的意愿行事,但不能按原样运作,因为sender
已在此范围内定义。可悲的是,我还不清楚解决这个问题 - 建议非常感谢!