Silverlightに設定されている特殊文字を一致させるのに苦労しています。私は次のことだけをします:
Silverlight TextBlockでLineBreakを表すには:
使用:> lineBreak <
しかし、Silverlight TextBoxで改行またはLineBreakを表すために何を使用しますか?
例:この1行が欲しいmag:これは1行です。これは2行目です
これに:
これは1行目です。 2行目です。
この\ r\nは機能していないようです。これは1行目です\ r\n
一番上の一番下の行
<TextBox Text="This is line one! This is line two!" />
Silverlight TextBoxの改行の奇妙さ
Xamlでリテラルテキストを使用してTextBoxのコンテンツを初期化する場合は、TextBlockと同じように、SilverlightがXamlで使用する改行文字を表す信頼できる方法が必要です。
SilverightはCR文字(0x0D-ASCII 13))を使用して、C#では文字列リテラルに\ rとして含める改行を表します。ただし、XamlはC#ではないため、\は使用できませんXamlのr。
Xamlは基本的にXMLですが、いくつかのXaml解析の奇妙さがあります。デレクが彼の答えにあるように、改行を含めるだけで、Xamlで直接は実行時に機能しません(デザイナーはそれを期待どおりに表示します)。これは、XmlがLF文字(0x0A)を改行文字として使用しているためです。ただし、コードでは、「\ r」または「\ n」を含む文字列をText
プロパティに割り当てることができます。そして、TextBoxは新しい行を表示します実際には、シーケンス "\ r\n"を割り当てることができ、1つの新しい行が表示されます(2つの新しい行ではありません)。
最終的には、Xml文字コードエンティティを使用して、\ aをXaml " "
で表すことができます。これは、実際には説明できない理由でXaml解析プロセスを生き延びます。
XAMLでは、単にLineBreakを使用できます。
<TextBlock Name="textBlock1" >line 1 <LineBreak /> line 2</TextBlock>
XAMLでText
のTextBox
プロパティに改行を追加するには、次の例に示すように、改行にASCII文字コードを使用します。
<TextBox x:Name="_test" Height="150" Text="This is line one.
This is line two." />
分離コードでText
のTextBox
プロパティに改行を追加するには、次のようにEnvironment.NewLine
静的値(\r\n
と同じ)を使用します。次のコード例では:
this._test.Text = string.Format(
"This is line one.{0}This is line two.",
Environment.NewLine);
みんなありがとう。
動いています。 Silverlightの場合TextBlock
:textBlock
の-[〜#〜] xaml [〜#〜]で<lineBreak/>
を使用します。
AnthonyWJones for Silverlight textBox
のおかげで、私はTextBox
での表示に使用される文字列で"\ r"を使用しています。
キャリッジリターンを含む文字列を表示する場合は、キャリッジリターンを含む文字列を使用します。
MyTextBlock.Text = @"line 1
line2";
Windows Phone Silverlight TextBlockの改行には、以下を使用します。
「これは1行目です。」 &vbCrLf& "これは2行目です!"
<TextBox x:Name="textBox" AcceptsReturn="True" />