单元格计算事件
怎么可以重写单元格的计算事件,比如单元格计算的时候,默认是取单元格的Value值作为计算公式的一部分,现在想改写为取单元格的Tag属性值作为计算公式的一部分 回复 1楼huchunyan的帖子抱歉,当前无法使用 tag 值作为 计算依据。 怎么可以重写单元格的计算事件,然后在事件处理程序中加上自定义的内容? 回复 3楼huchunyan的帖子
Spread 提供了自定义公式功能,代码如下:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
gcSpreadSheet1.ActiveSheet.AddCustomFunction(new AverageFunctionInfo());
gcSpreadSheet1.ActiveSheet.Cells.Value = 1;
gcSpreadSheet1.ActiveSheet.Cells.Value = 2;
gcSpreadSheet1.ActiveSheet.Cells.Value = 3;
gcSpreadSheet1.ActiveSheet.Cells.Value = 4;
gcSpreadSheet1.ActiveSheet.SetFormula(0, 4, "MyAverage(A1,B1,C1,D1)");
}
}
public class AverageFunctionInfo : CalcFunction
{
public override string Name { get { return "MyAverage"; } }
public override int MinArgs { get { return 1; } }
public override int MaxArgs { get { return 4; } }
public override object Evaluate(object[] args)
{
int X = (int)(args);
int X1 = (int)(args);
int X2 = (int)(args);
int X3 = (int)(args);
return ((X1 - X / X) <= 20 && ((X2 - X) / X) <= 20 && ((X3 - X) / X) <= 20);
}
}
但是无法传递tag到Evaluate重载方法中。 回复 3楼huchunyan的帖子
为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢
http://gcdn.gcpowertools.com.cn/attachment.aspx?attachmentid=10062
页:
[1]