我創建了包含TextBlock的adorner。 此TextBlock重疊裝飾的文本框。 問題是,這些控件的文本的起始位置並不相同。 如何對齊TextBlock以實現文本位置的匹配?如何定位TextBox的裝飾者?
1
A
回答
3
除了明顯調整裝飾圖層中TextBlock的邊距之外,還有另一種想到的方法。不知道你真正的目標是什麼(除了在文本框上定位文本)它很難說如果這會有所幫助,但是在這裏。
您可能use a VisualBrush由您在裝飾層中使用的TextBlock組成(此技術將而不是使用裝飾層)。然後將該VisualBrush應用於TextBox的背景。這會將文本完全放置在您的文本框中。當然,當TextBox爲空時,這種技術非常有用,因此只有VisualBrush的TextBlock中的文本可見(而不需要TextBox中的任何其他文本也可見)。
我已經使用這種技術來顯示「提示文本」,當一個文本框是空的(這裏顯示一個可能的錯誤模板和提示文本的可疑組合,但你得到的想法)。在「0〜159」的文本是在VisualBrush一個TextBlock是被應用到文本框的背景時,其Text屬性爲空:
也許與你的目標更多的信息,我們可以建議其他方法,以及。
相關問題
- 1. WPF裝飾者與定製裝飾者?
- 2. ZEND - 裝飾者和元素的位置?
- 3. 裝飾者模式 - 如何一次裝飾兩種類型
- 4. 成本裝飾者
- 5. 裝飾者的工作
- 6. WinForms中的WPF裝飾者
- 7. 如何找到所有裝飾有特定裝飾的課程?
- 8. django user_passes_test裝飾者is_superuser
- 9. 裝飾者圖案,頭先
- 10. 裝飾者在Python-Flask
- 11. 裝飾者Spree ::變種
- 12. SimpleInjector - 裝飾者不開火?
- 13. 裝飾者得到自我
- 14. @瞬間vs裝飾者
- 15. 攔截器vs裝飾者
- 16. 裝飾者和裝飾控件之間的交換參數
- 17. 裝飾元素上的裝飾者和事件
- 18. python裝飾器是如何定義的?
- 19. 如何在gwt中定位裝飾面板
- 20. Angular2:裝飾者之間的區別
- 21. 動畫wpf中的線條裝飾者?
- 22. 角裝飾者中的'this'是什麼?
- 23. 如何禁用Aptana中的字符串裝飾(或者稱爲)?
- 24. 如何初始化附屬財產的裝飾者
- 25. 什麼是「裝飾者」,它們是如何使用的?
- 26. 裝飾者如何實現新的行爲?
- 27. 如何通過flask.Blueprint.route裝飾者傳遞課程的自我?
- 28. 裝飾裝飾器
- 29. 將裝飾者添加到綁定的兒童?
- 30. 32位和64位庫裝飾
是的,提示文字是目標。我考慮過VisualBrush,但由於綁定而改變TextProperty是不可接受的。 –
@voroninp我不知道我明白。使用'VisualBrush'技術可以將提示文本放入一個'Brush'中,該''Brush'應用於'TextBox'的** background **屬性,所以不會混淆實際的'TextBox.TextProperty'。正因爲如此,當我用這種技術綁定'TextBoxes'時,它的工作很好。那有意義嗎? –
謝謝。現在我明白你的意思了。這裏的問題是,視覺樣式與TextBox中文本的樣式不一樣。文字對齊可以不同,字體的大小等等。我希望您同意,在第一個字母處看到閃爍的光標更令人高興。如果用戶只是鍵入相同的文本作爲提示文本不移動它只會改變它的顏色。我知道這是一種完美主義=) –