0

OOoForum.org でのディスカッション

Pythonでは、次のようなことができます:

table.BreakType = PAGE_BEFORE
table.HoriOrient = 0
table.RightMargin = 6.93 * 2540 - table_width

C# では、プロパティを設定する方法が見つかりません。XTableTable にはいくつかのメソッドしかありませんが、このようなことを行うものはないようです。C# でプロパティを設定するにはどうすればよいですか?

4

1 に答える 1

0

XPropertySet インターフェイスを介してテーブルにアクセスする必要があります。これを行うには、テーブルを XPropertSet にキャストします。

// Example 
XPropertySet tablePropSet = (XPropertySet)textTable; 

// This is how you set a property in C# 
// You have to create a new Any object to pass it as parameter 
tablePropSet.setPropertyValue("HeaderRowCount", new Any(typeof(int), 1)); 

「Any」オブジェクトは「uno」名前空間にあります (unoidl.com.sun.star.uno ではありません)。あなたは本当にする必要はありません

typeof(int)

型が基本型でない場合を除きます。

new Any(1)

基本的なタイプでは問題なく動作します。

ブレークタイプの例:

XPropertySet tablePropertySet = (XPropertySet)table;
tablePropertySet.setPropertyValue
    ("BreakType", new Any(typeof(BreakType), BreakType.PAGE_BEFORE));
于 2009-10-23T02:23:54.350 に答える