3

Object 型のオブジェクトに 'System.Windows.Documents.TextSegment' 型のオブジェクトがあります。TextSegment-Struct は、.net フレームワークの内部コードであるため、私のコードでは使用できません。

私がやりたいのは、TextSegment 型のオブジェクトの Start プロパティと End プロパティにアクセスすることです。次のコードを使用して、リフレクションで試しました。

// This object is of type TextSegment
object textSegment = segments[0];
FieldInfo info = textSegment.GetType().GetField("_start", BindingFlags.IgnoreCase | 
   BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance| BindingFlags.Static;

FieldInfo の値にアクセスする方法がわかりません。

次のコードで試しました:

object value1 = info.GetValue(segments[0]);
object value2 = info.GetValue(null);

しかし、何も機能しませんでした。

TextSegment の値を取得するにはどうすればよいですか?

4

1 に答える 1

2

そのコードはベルを鳴らします ;)...

タイプミス (BindingFlags の末尾にブラケットがない) があり、BindingFlags のうち、必要なのは Instance と NonPublic だけですが、実際の問題は見つかりません。

私がチェックしたところ、これは私にとっては問題なく機能するため、おそらくさらにコードを提供する必要があります。

ここに画像の説明を入力

値が実際に null でないことを確認しましたか?

ここに画像の説明を入力

于 2013-03-22T15:50:16.723 に答える