[解決済み] WPFのStringFormatによるバインディングがToolTipで機能しない件
2023-03-15 18:10:09
質問
次のコードは、全く同じバインディング表記を使用して、MyTextBlockという名前のTextBlockのTextをTextBoxのTextとToolTipプロパティにバインドする簡単なバインディングを持っています。
<StackPanel>
<TextBlock x:Name="MyTextBlock">Foo Bar</TextBlock>
<TextBox Text="{Binding ElementName=MyTextBlock, Path=Text, StringFormat='It is: \{0\}'}"
ToolTip="{Binding ElementName=MyTextBlock, Path=Text, StringFormat='It is: \{0\}'}" />
</StackPanel>
また、バインディングでは .NET 3.5 SP1 で導入された StringFormat プロパティを使用します。 を使用します。これは、上記のTextプロパティでは正常に動作しますが、ToolTipでは壊れているように見えます。期待される結果は、"It is: Foo Bar"ですが、TextBoxにカーソルを合わせると、ToolTipはバインディング値のみを表示し、文字列フォーマットされた値は表示されません。何かアイデアはありますか?
どのように解決するのですか?
以下は、言葉足らずな解決方法ですが、うまくいきます。
<StackPanel>
<TextBox Text="{Binding Path=., StringFormat='The answer is: {0}'}">
<TextBox.DataContext>
<sys:Int32>42</sys:Int32>
</TextBox.DataContext>
<TextBox.ToolTip>
<ToolTip Content="{Binding}" ContentStringFormat="{}The answer is: {0}" />
</TextBox.ToolTip>
</TextBox>
</StackPanel>
私はもっとシンプルな構文、私の最初の質問にあるようなものを好みます。
関連
-
[解決済み] StackPanelの子パネルが下方向に最大限のスペースを埋めるようにするには?
-
[解決済み] SelectedItem、SelectedValue、SelectedValuePathの違いについて
-
[解決済み】Visual Studio 2015の追加デバッグオプションの無効化
-
[解決済み] XAMLで複数のバリューコンバータを連結する方法はありますか?
-
[解決済み] WPFのスライダーを整数の位置にのみスナップさせる方法とは?
-
[解決済み] WPFバインディングで値をnullに設定する
-
[解決済み] WPF: 画像を元の大きさで表示するには?
-
[解決済み] WPFでデザインタイムデータをダミー化するには、どのような方法がありますか?
-
[解決済み] すべてのコントロールをターゲットにする方法 (WPF Styles)
-
[解決済み] ListBoxに垂直スクロールバーを表示させるには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] WPFのテキストラップとWrapWithOverflowの比較
-
[解決済み] WPFでデータトリガーに複数の条件を指定するには?
-
[解決済み] DataTrigger where value is NOT null?
-
[解決済み] グリッドカラムの幅・高さを設定する際の「Auto」と「*」の違いは何ですか?
-
[解決済み] 読み取り専用のGUIプロパティをViewModelにプッシュバックする
-
[解決済み] WPFのページロードでコンボボックスにデフォルトテキスト"--Select Team -- "を表示するには?
-
[解決済み] WPFでグリッド行を非表示にする
-
[解決済み] 右クリックでContextMenuを表示する前にTreeView Nodeを選択する
-
[解決済み] WPF 自分自身へのバインド
-
[解決済み] WPF ListBoxでTextBlockを強制的に折り返す