2、LegacyBehaviors设置为Style或ALL可以支持富文本就可以的。但是目前Style模式还有一个问题,画框线的颜色是灰色的。手动调整为黑色,画出来也是灰色。(None模式是黑色的。)
4、使用Cellchanged事件可以在触发公式单元格值改变时触发:此方式我测试没有触发,不知道是哪里出现了问题。我上传DEMO可以表现出来。
5、增加问题:需要在触发事件时获取由哪个Sheet触发的。因为在设置SetNote时,是要指定设置到哪个Sheet的单元格上的。
举例:DEMO打开的XML文件,有两个Sheet,当值改变时触发事件。可以直得获到e.Row和 e.Column。但如果通过代码设置 fpSpread1.ActiveSheet.SetNote(e.Row, e.Column, "测试");可能会设置到不是对应的Sheet的单元格中,因为此时触发了事件,但是触发事件的Sheet是ActiveSheet吗?我设置SetNote的代码如下:
RichTextBox Rtx = new RichTextBox();
string OldTip = Spread_RecdCertif.ActiveSheet.GetNote(e.Row, e.Column);
Rtx.Text = OldTip + "[" + AppEnvironment.Operator.OpeName + "][" + DateTime.Now.ToString() + "][" + OldValue + "]\r\n";
Spread_RecdCertif.ActiveSheet.SetNote(e.Row, e.Column, Rtx.Text);
Spread_RecdCertif.ActiveSheet.Cells[e.Row, e.Column].NoteStyle = NoteStyle.PopupStickyNote;
Spread_RecdCertif.ActiveSheet.Cells[e.Row, e.Column].NoteIndicatorSize = new Size(8, 8);
FarPoint.Win.Spread.DrawingSpace.StickyNoteStyleInfo si = new FarPoint.Win.Spread.DrawingSpace.StickyNoteStyleInfo();
si.Width = 300;
si.Height = 15 * Rtx.Lines.Length;
Spread_RecdCertif.ActiveSheet.SetStickyNoteStyleInfo(e.Row, e.Column, si);
|