計算される TextBox をアプリケーションに追加するとします。ユーザーが TextBox に式を入力できるようにします。コントロールがフォーカスを失うか、ユーザーが Enter を押すと、式が評価されます。それには、たとえば次のコードを使用します。
| XAML |
コードのコピー
|
|---|---|
public MainWindow()
{
InitializeComponent();
var tb = new TextBox();
tb.LostFocus += (s,e) => { Evaluate(s); };
tb.KeyDown += (s, e) => { Evaluate(s); };
}
void Evaluate(object sender)
{
var tb = sender as TextBox;
var ce = new C1.WPF.Binding.C1CalcEngine();
try
{
var value =ce.Evaluate(tb.Text);
tb.Text = value.ToString();
}
catch (Exception x)
{
MessageBox.Show("Error in Expression: " + x.Message);
}
}
|
|
C1CalcEngine クラスの典型的な使用方法として、計算されるセルをグリッドコントロールやデータオブジェクトに実装することがあります。この方法を使用して、グリッドコントロールにスプレッドシート機能を追加するサンプルを作成しました。このコードは長すぎるのでここには掲載しませんが、http://demos.componentone.com/silverlight/ExcelBook/ でサンプルの動作を確認できます。