Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
DataGridViewで三角関数を入力したいです。
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=10178#CommentId20403
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
ひでと
 (社会人)
投稿日時
2011/4/25 15:59:25
XP、Visual Studio 2005 を使用しております。
DataGridViewのセルに入力するとき三角関数を式として入力して、答えをそのセルにそのまま入力したいのです。
VBScripを使って計算式を計算する方法をネットで知り、
Public Function Culk(ByVal expression As String) As String
Try
Dim exp As String = expression
Dim t As Type = Type.GetTypeFromProgID("MSScriptControl.ScriptControl")
Dim obj As Object = Activator.CreateInstance(t)
t.InvokeMember("Language", Reflection.BindingFlags.SetProperty, Nothing, obj, New Object() {"vbscript"})
Dim Result As Double = CDbl(t.InvokeMember("Eval", Reflection.BindingFlags.InvokeMethod, Nothing, obj, New Object() {exp}))
Return Result
Catch ex As Exception
End Try
Return expression
End Function
として 文字列を計算する方法は分ったのですが、
DataGridViewのどのようなイベントを用いたら、入力後に計算できるのでしょうか?
以前 CurrentCellDirtyStateChangedイベントで編集時に計算する方法を教えていただきましたが、
このイベントだと、1文字1文字毎にイベントが発生?するようで、また編集中のセルが取得できない?ように思います。よろしくお願いいたします。