0

チャンクを使用してフォントを太字にしようとしています。しかし、特別なことは、私のラベルが datareader 内の addcell の下に書かれていることです。

これは、データリーダー内でラベルをフォーマットしようとする方法です

table.AddCell(phrase.Add(new Chunk("test:", normalFont)) + dr[0].ToString());

これはフレーズとフォント タイプの宣言です。

var normalFont = FontFactory.GetFont(FontFactory.HELVETICA, 12);
var phrase = new Phrase();

そして、これが表示されているものです:

ここに画像の説明を入力

ただし、ラベルをフォーマットする前に、これはどのように見えるかです

ここに画像の説明を入力

これは、ラベルを直接追加する場所ですtable.AddCell

table.AddCell(dr[0].ToString());
4

1 に答える 1

2

あなたは合格します

phrase.Add(new Chunk("test:", normalFont)) + dr[0].ToString()

table.AddCell。ここで使用されるのオーバーロードは次のPhrase.Addように宣言されます。

public virtual new bool Add(IElement element)

(cf. Phrase.cs )

したがって、phrase.Add(new Chunk("test:", normalFont))ブール値に評価され、trueあなたは持っています

true + dr[0].ToString()

stringブール値はそれ自体に変換されます。

"True" + dr[0].ToString()

あなたの場合dr[0].ToString()、 が含まれているよう"admin"です。そう:

"True" + "admin"

今後:

"Trueadmin"

これstringが に渡されるとtable.AddCell、表示されているものが得られます。

コンテンツを含む表のセル

代わりに、次の行に沿って何かをしたいかもしれません:

phrase.Add(new Chunk("test:", normalFont));
phrase.Add(dr[0].ToString());
table.AddCell(phrase);
于 2013-06-06T08:17:33.993 に答える