簡體   English   中英

如何為TextBox定位裝飾?

[英]How to position adorner for TextBox?

我創建了包含TextBlock的裝飾器。 此TextBlock與裝飾的TextBox重疊。 問題是這些控件的文本起始位置不一樣。 如何對齊TextBlock以實現文本位置的匹配?

除了明顯調整裝飾層中TextBlock的邊距之外,還有另一種可能的方法。 在不知道你的真正目標是什么的情況下(除了在TextBox上定位文本之外)很難說這是否會有所幫助,但是這里有。

您可以使用VisualBrush ,它包含您在adorner圖層中使用的TextBlock(此技術不會使用adorner圖層)。 然后將VisualBrush應用於TextBox的背景。 這會將文本准確定位在TextBox中。 當然,當TextBox為空時,這種技術最有用,因此只有VisualBrush的TextBlock中的文本是可見的(而不是TextBox中的任何其他文本也可見)。

我已經使用這種技術在TextBox為空時顯示“提示文本”(此處顯示的可能是ErrorTemplate和提示文本的可疑組合,但您明白了)。 “0到159”文本是VisualBrush中的TextBlock,當Text的屬性為空時,它將應用於TextBox的背景:

使用VisualBrush顯示的提示文本

也許有關於您的目標的更多信息,我們也可以建議其他方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM