0

私は「JavaScript API for Office」を調査していますが、ここでは非常に限られた機能のように見えます:( !! 今のところ、ユーザーが見つけたドキュメントでプレースホルダー [1]、[2].... を作成することができました次に、カーソルがタスク ペインのボタンを押すので、このプレースホルダーなどに関連するタスク ペインにテキストエリアを作成します (これはバインディングであり、正常に動作します)。

私の問題は、ユーザーの選択時にこれらのテキストボックスを表示/非表示にしたいことです。したがって、ユーザーがプレースホルダー [1] を選択した場合、textbox1 (テキストボックスまたはテキストエリアと同じ) のみを表示するなど、実際に使用してこれを行うことができました

 var num = String(eventArgs.binding.id).split("_")[String(eventArgs.binding.id).split("_").length-1]
        document.getElementById("txt"+num).style.display = "block";

onBindingSelectionChanged イベント ハンドラで

しかし、ユーザーが多くのプレースホルダー [1][2] を選択すると問題が発生します。この場合、すべての相対テキスト ボックス (textbox1、textbox2) を表示する必要がありますが、Office.context.document.bindings[i] のようなものが見つかりません。 .selected

このプロパティ .selected がバインディングで使用できる場合、すべてのバインディングを反復処理し、selected = true のバインディングを表示するため、問題は解決します。

手がかりはありますか??

また、タスクペインのテキストボックスを相対プレースホルダーの同じ場所に移動したいので、これらのプレースホルダーの場所の手がかりを見つけたいと思っています(水平方向)

皆さん、ありがとう、幸せなコーディング...

4

1 に答える 1

0

アムル

「プレースホルダー」の意味がわかりません。それを明確にしていただけますか?

ユーザーが選択したバインディングを取得しようとしているようです。そうですか?これを行うには、BindingSelectionChanged イベントをサブスクライブする必要があります。イベント引数には、現在選択されているバインディングが含まれます。

API のその部分の参照ページは次のとおりです: http://msdn.microsoft.com/en-us/library/office/fp161088.aspx

-マイケル

于 2013-11-15T18:40:15.893 に答える