6

私は WinTable オブジェクトを取り、それをそのネイティブ オブジェクト タイプにキャストしようとしています。

CustomControl control = (CustomControl) this.UIMap.UIMainWindow.UICustomControl.NativeElement;

CustomControl次に、プログラムのソースコードでのように結果を処理したいのですcontrol.DoAThing()が、クラスを含む.dllを既に参照していますCustomControlが、問題は、関数の定義がそうすべきだと言っているのではなく.NativeElement;、型を返すことです.Object[]Object

行くべき道ですか.NativeElement、それとも私はその目的を誤解していますか?

更新:結果のオブジェクトのタイプを確認しましObject[]た。最初のタイプはタイプSystem.__ComObjectで、2番目はタイプSystem.Int32ですが、これらのどちらが何を表しているのかわかりません...

4

2 に答える 2

0

CustomControlUICustomControlクラスのコードを投稿していただけると助かります。あなたの問題についての私の漠然とした理解に基づいて、次のことがうまくいくかもしれません:それを試して結果を投稿してください。

object[] native = 
  this.UIMap.UIMainWindow.UICustomControl.NativeElement as object[];
if ((native[0] != null) && (native[0] is IAccessible)) {
    IAccessible a = native[0] as IAccessible;
    if (a is CustomControl)
        CustomControl control = (CustomControl)a;
}
于 2013-06-19T13:38:32.913 に答える